void CodeLiteLLDBApp::NotifyLocals(LLDBVariable::Vect_t locals) { wxPrintf("codelite-lldb: NotifyLocals called with %d locals\n", (int)locals.size()); LLDBReply reply; reply.SetReplyType(kReplyTypeLocalsUpdated); reply.SetVariables(locals); SendReply(reply); }
void LLDBLocalsView::DoAddVariableToView(const LLDBVariable::Vect_t& variables, wxTreeItemId parent) { for(size_t i = 0; i < variables.size(); ++i) { LLDBVariable::Ptr_t variable = variables.at(i); wxTreeItemId item = m_treeList->AppendItem( parent, variable->GetName(), wxNOT_FOUND, wxNOT_FOUND, new LLDBVariableClientData(variable)); m_treeList->SetItemText(item, LOCALS_VIEW_SUMMARY_COL_IDX, variable->GetSummary().IsEmpty() ? variable->GetValue() : variable->GetSummary()); m_treeList->SetItemText(item, LOCALS_VIEW_VALUE_COL_IDX, variable->GetValue()); m_treeList->SetItemText(item, LOCALS_VIEW_TYPE_COL_IDX, variable->GetType()); if(variable->IsValueChanged()) { m_treeList->SetItemTextColour(item, "RED"); } if(variable->HasChildren()) { // insert dummy item here m_treeList->AppendItem(item, "<dummy>"); } } if(!variables.empty()) { m_treeList->Expand(parent); } }