debugger: fix basic script debugging

Locals view was broken, also unknown entries should not have children.
This commit is contained in:
hjk
2009-09-02 13:19:47 +02:00
parent 36f2edb5e2
commit 7ce044031c

View File

@@ -608,10 +608,13 @@ void ScriptEngine::updateLocals()
data.iname = "local"; data.iname = "local";
data.name = "local"; data.name = "local";
data.scriptValue = context->activationObject(); data.scriptValue = context->activationObject();
qq->watchHandler()->insertData(data); qq->watchHandler()->beginCycle();
updateSubItem(data);
qq->watchHandler()->endCycle();
// FIXME: Use an extra thread. This here is evil // FIXME: Use an extra thread. This here is evil
m_stopped = true; m_stopped = true;
q->showStatusMessage(tr("Stopped."), 5000);
while (m_stopped) { while (m_stopped) {
//SDEBUG("LOOPING"); //SDEBUG("LOOPING");
QApplication::processEvents(); QApplication::processEvents();
@@ -623,7 +626,6 @@ void ScriptEngine::updateWatchData(const WatchData &data)
{ {
updateSubItem(data); updateSubItem(data);
//qq->watchHandler()->rebuildModel(); //qq->watchHandler()->rebuildModel();
q->showStatusMessage(tr("Stopped."), 5000);
} }
void ScriptEngine::updateSubItem(const WatchData &data0) void ScriptEngine::updateSubItem(const WatchData &data0)
@@ -679,9 +681,11 @@ void ScriptEngine::updateSubItem(const WatchData &data0)
} else if (ob.isUndefined()) { } else if (ob.isUndefined()) {
data.setType("<undefined>"); data.setType("<undefined>");
data.setValue("<unknown>"); data.setValue("<unknown>");
data.setHasChildren(false);
} else { } else {
data.setType("<unknown>"); data.setType("<unknown>");
data.setValue("<unknown>"); data.setValue("<unknown>");
data.setHasChildren(false);
} }
qq->watchHandler()->insertData(data); qq->watchHandler()->insertData(data);
return; return;