add new CallstackPanel

pull/3094/head
Iuri Matias 7 years ago committed by yann300
parent aba9c8de14
commit cddcfaf2db
  1. 5
      src/app/debugger/debuggerUI/VmDebugger.js
  2. 34
      src/app/debugger/debuggerUI/vmDebugger/CallstackPanel.js

@ -3,7 +3,7 @@ var csjs = require('csjs-inject')
var CodeListView = require('./vmDebugger/CodeListView')
var CalldataPanel = require('./vmDebugger/CalldataPanel')
var MemoryPanel = require('./vmDebugger/MemoryPanel')
var CallstackPanel = require('../remix-debugger/src/ui/CallstackPanel')
var CallstackPanel = require('./vmDebugger/CallstackPanel')
var StackPanel = require('../remix-debugger/src/ui/StackPanel')
var StoragePanel = require('../remix-debugger/src/ui/StoragePanel')
var FullStoragesChangesPanel = require('../remix-debugger/src/ui/FullStoragesChanges')
@ -70,9 +70,10 @@ function VmDebugger (_parentUI, _traceManager, _codeManager, _solidityProxy, _ca
})
})
this.callstackPanel = new CallstackPanel(_parentUI, _traceManager)
this.stackPanel = new StackPanel(_parentUI, _traceManager)
this.storagePanel = new StoragePanel(_parentUI, _traceManager)
this.callstackPanel = new CallstackPanel(_parentUI, _traceManager)
this.stepDetail = new StepDetail(_parentUI, _traceManager)
this.solidityState = new SolidityState(_parentUI, _traceManager, _codeManager, _solidityProxy)
this.solidityLocals = new SolidityLocals(_parentUI, _traceManager, _callTree)

@ -0,0 +1,34 @@
'use strict'
var DropdownPanel = require('./DropdownPanel')
var yo = require('yo-yo')
function CallstackPanel (_parent, _traceManager) {
this.parent = _parent
this.traceManager = _traceManager
this.basicPanel = new DropdownPanel('Call Stack', {json: true})
this.init()
}
CallstackPanel.prototype.render = function () {
return yo`<div id='callstackpanel' >${this.basicPanel.render()}</div>`
}
CallstackPanel.prototype.init = function () {
var self = this
this.parent.event.register('indexChanged', this, function (index) {
if (index < 0) return
if (self.parent.currentStepIndex !== index) return
self.traceManager.getCallStackAt(index, function (error, callstack) {
if (error) {
console.log(error)
self.basicPanel.update({})
} else if (self.parent.currentStepIndex === index) {
self.basicPanel.update(callstack)
}
})
})
}
module.exports = CallstackPanel
Loading…
Cancel
Save