Beispiel #1
0
 Editor::IndentationMode Editor::indentationMode()
 {
     QVariantMap indent = sendMessageWithResult("C_FUN_GET_INDENTATION_MODE").toMap();
     IndentationMode out;
     out.useTabs = indent.value("useTabs", true).toBool();
     out.size = indent.value("size", 4).toInt();
     return out;
 }
Beispiel #2
0
    QString Editor::setLanguageFromFileName(QString fileName)
    {
        QString lang = sendMessageWithResult("C_FUN_SET_LANGUAGE_FROM_FILENAME",
                                             fileName).toString();

        if (!m_customIndentationMode)
            setIndentationMode(lang);

        return lang;
    }
Beispiel #3
0
    Editor::IndentationMode Editor::detectDocumentIndentation(bool *found)
    {
        QVariantMap indent =
                sendMessageWithResult("C_FUN_DETECT_INDENTATION_MODE").toMap();

        IndentationMode out;

        bool _found = indent.value("found", false).toBool();
        if (found != nullptr) {
            *found = _found;
        }

        if (_found) {
            out.useTabs = indent.value("useTabs", true).toBool();
            out.size = indent.value("size", 4).toInt();
        }

        return out;
    }
Beispiel #4
0
    QList<Editor::Selection> Editor::selections()
    {
        QList<Selection> out;

        QList<QVariant> sels = sendMessageWithResult("C_FUN_GET_SELECTIONS").toList();
        for (int i = 0; i < sels.length(); i++) {
            QVariantMap selMap = sels[i].toMap();
            QVariantMap from = selMap.value("anchor").toMap();
            QVariantMap to = selMap.value("head").toMap();

            Selection sel;
            sel.from.line = from.value("line").toInt();
            sel.from.column = from.value("ch").toInt();
            sel.to.line = to.value("line").toInt();
            sel.to.column = to.value("ch").toInt();

            out.append(sel);
        }

        return out;
    }
Beispiel #5
0
    QList<QMap<QString, QString>> Editor::languages()
    {
        QMap<QString, QVariant> languages =
                sendMessageWithResult("C_FUN_GET_LANGUAGES").toMap();

        QList<QMap<QString, QString>> out;

        QMap<QString, QVariant>::iterator lang;
        for (lang = languages.begin(); lang != languages.end(); ++lang) {
            QMap<QString, QVariant> mode = lang.value().toMap();

            QMap<QString, QString> newMode;
            newMode.insert("id", lang.key());
            newMode.insert("name", mode.value("name").toString());
            newMode.insert("mime", mode.value("mime").toString());
            newMode.insert("mode", mode.value("mode").toString());

            out.append(newMode);
        }

        return out;
    }
Beispiel #6
0
 QStringList Editor::selectedTexts()
 {
     QVariant text = sendMessageWithResult("C_FUN_GET_SELECTIONS_TEXT");
     return text.toStringList();
 }
Beispiel #7
0
 QPair<int, int> Editor::scrollPosition()
 {
     QList<QVariant> scroll = sendMessageWithResult("C_FUN_GET_SCROLL_POS").toList();
     return QPair<int, int>(scroll[0].toInt(), scroll[1].toInt());
 }
Beispiel #8
0
 QPair<int, int> Editor::cursorPosition()
 {
     QList<QVariant> cursor = sendMessageWithResult("C_FUN_GET_CURSOR").toList();
     return QPair<int, int>(cursor[0].toInt(), cursor[1].toInt());
 }
Beispiel #9
0
 QVariant Editor::sendMessageWithResult(const QString &msg)
 {
     return sendMessageWithResult(msg, 0);
 }
Beispiel #10
0
 void Editor::sendMessage(const QString &msg, const QVariant &data)
 {
     sendMessageWithResult(msg, data);
 }
Beispiel #11
0
 QString Editor::value()
 {
     return sendMessageWithResult("C_FUN_GET_VALUE").toString();
 }
Beispiel #12
0
 QString Editor::language()
 {
     QVariantMap data = sendMessageWithResult("C_FUN_GET_CURRENT_LANGUAGE").toMap();
     return data.value("id").toString();
 }
Beispiel #13
0
 bool Editor::isClean()
 {
     return sendMessageWithResult("C_FUN_IS_CLEAN", 0).toBool();
 }
Beispiel #14
0
 int Editor::lineCount()
 {
     return sendMessageWithResult("C_FUN_GET_LINE_COUNT").toInt();
 }
Beispiel #15
0
 QString Editor::getCurrentWord()
 {
     return sendMessageWithResult("C_FUN_GET_CURRENT_WORD").toString();
 }