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()));
}
示例#2
0
void KHelpDlg::getContextHelp (const QString &context_line, int cursor_pos) {
	QString result = RKCommonFunctions::getCurrentSymbol (context_line, cursor_pos);
	if (result.isEmpty ()) return;

	getFunctionHelp (result);
}