MCPcopy Create free account
hub / github.com/Codeya-IDE/deepin-ide / updateSymbol

Method updateSymbol

src/plugins/codeeditor/symbol/symbolbar.cpp:220–244  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

218}
219
220void SymbolBar::updateSymbol(int line, int index)
221{
222 auto editor = qobject_cast<TextEditor *>(sender());
223 if (!editor)
224 return;
225
226 auto info = SymbolManager::instance()->findSymbol(editor->getFile(), line, index);
227 if (info.symbolName.isEmpty())
228 return;
229
230 if (!symbolItem) {
231 if (mainLayout->count() < 1)
232 return;
233
234 symbolItem = new CurmbItem(CurmbItem::Symbol, mainLayout->count() - 1, this);
235 mainLayout->insertWidget(mainLayout->count() - 1, symbolItem);
236 connect(symbolItem, &CurmbItem::clicked, this, &SymbolBar::curmbItemClicked);
237 }
238
239 QVariantList list { editor->getFile(), line, index };
240 symbolItem->setUserData(list);
241 symbolItem->setText(info.symbolName);
242 symbolItem->setToolTip(info.symbolName);
243 symbolItem->setIcon(SymbolManager::instance()->iconFromKind(info.kind));
244}
245
246void SymbolBar::curmbItemClicked()
247{

Callers

nothing calls this directly

Calls 10

connectFunction · 0.85
findSymbolMethod · 0.80
insertWidgetMethod · 0.80
setUserDataMethod · 0.80
iconFromKindMethod · 0.80
getFileMethod · 0.45
isEmptyMethod · 0.45
countMethod · 0.45
setTextMethod · 0.45
setIconMethod · 0.45

Tested by

no test coverage detected