void QFESPIMB040ScriptedAcquisition::edtScript_cursorPositionChanged() { QTextCursor tc = ui->edtScript->getEditor()->textCursor(); /* tc.select(QTextCursor::WordUnderCursor); QString text=tc.selectedText(); QString word=text.toLower();*/ QString text=ui->edtScript->getEditor()->toPlainText(); QString word; int newPos=tc.position(); if (newPos>=0 && newPos<text.size()) { word+=text[newPos]; int p=newPos-1; while (p>=0 && (text[p].isLetterOrNumber()||text[p]=='_'||text[p]=='.')) { word=text[p]+word; p--; } p=newPos+1; while (p<text.size() && (text[p].isLetterOrNumber()||text[p]=='_'||text[p]=='.')) { word=word+text[p]; p++; } word=word.toLower(); } if (functionhelp.contains(word)) { ui->labHelp->setText(getFunctionHelp(word)); //ui->labTemplate->setText(tr("<tt>%1</tt>").arg(getFunctionTemplate(word))); } else { ui->labHelp->setText(tr("no help for '%1'' available ...").arg(word)); } ui->labCursorPos->setText(tr("Line %1, Column %2").arg(ui->edtScript->getEditor()->getLineNumber()).arg(ui->edtScript->getEditor()->getColumnNumber())); }
void KHelpDlg::getContextHelp (const QString &context_line, int cursor_pos) { QString result = RKCommonFunctions::getCurrentSymbol (context_line, cursor_pos); if (result.isEmpty ()) return; getFunctionHelp (result); }