File indexing completed on 2024-04-14 03:55:21
0001 /* 0002 SPDX-FileCopyrightText: 2017 Allan Sandfeld Jensen <kde@carewolf.com> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #ifndef KTEXTEDITOR_SCRIPTCURSOR_H 0008 #define KTEXTEDITOR_SCRIPTCURSOR_H 0009 0010 #include <QJSEngine> 0011 #include <QJSValue> 0012 0013 #include "ktexteditor/cursor.h" 0014 0015 inline QJSValue cursorToScriptValue(QJSEngine *engine, const KTextEditor::Cursor cursor) 0016 { 0017 const auto result = engine->globalObject().property(QStringLiteral("Cursor")).callAsConstructor(QJSValueList() << cursor.line() << cursor.column()); 0018 Q_ASSERT(!result.isError()); 0019 return result; 0020 } 0021 0022 inline KTextEditor::Cursor cursorFromScriptValue(const QJSValue &obj) 0023 { 0024 const auto line = obj.property(QStringLiteral("line")); 0025 const auto column = obj.property(QStringLiteral("column")); 0026 return KTextEditor::Cursor(line.toInt(), column.toInt()); 0027 } 0028 0029 #endif