diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b2935a445..548b22c46 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -6,18 +6,36 @@ on: jobs: build: - name: Build (${{ matrix.os }}) + name: Build (${{ matrix.os }}, Qt ${{ matrix.qt_version }}) runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: include: - os: ubuntu-latest + qt_version: '5.15.2' qt_arch: gcc_64 + qt_modules: '' - os: macos-latest + qt_version: '5.15.2' qt_arch: clang_64 + qt_modules: '' - os: windows-latest + qt_version: '5.15.2' qt_arch: win64_msvc2019_64 + qt_modules: '' + - os: ubuntu-latest + qt_version: '6.8.3' + qt_arch: linux_gcc_64 + qt_modules: qt5compat + - os: macos-latest + qt_version: '6.8.3' + qt_arch: clang_64 + qt_modules: qt5compat + - os: windows-latest + qt_version: '6.8.3' + qt_arch: win64_msvc2022_64 + qt_modules: qt5compat steps: - name: Check out source @@ -33,10 +51,11 @@ jobs: if: runner.os == 'Linux' uses: jurplel/install-qt-action@v4 with: - version: '5.15.2' + version: ${{ matrix.qt_version }} host: linux target: desktop arch: ${{ matrix.qt_arch }} + modules: ${{ matrix.qt_modules }} install-deps: true cache: true @@ -44,28 +63,47 @@ jobs: if: runner.os == 'macOS' uses: jurplel/install-qt-action@v4 with: - version: '5.15.2' + version: ${{ matrix.qt_version }} host: mac target: desktop arch: ${{ matrix.qt_arch }} + modules: ${{ matrix.qt_modules }} cache: true - name: Install Qt (Windows) if: runner.os == 'Windows' uses: jurplel/install-qt-action@v4 with: - version: '5.15.2' + version: ${{ matrix.qt_version }} host: windows target: desktop arch: ${{ matrix.qt_arch }} + modules: ${{ matrix.qt_modules }} cache: true - - name: Set up MSVC - if: runner.os == 'Windows' + - name: Remove obsolete AGL dependency (Qt 6 macOS) + if: runner.os == 'macOS' && startsWith(matrix.qt_version, '6.') + shell: bash + run: | + qt_prefix="$(qmake -query QT_INSTALL_PREFIX)" + find "$qt_prefix" -type f \( -name '*.conf' -o -name '*.prf' -o -name '*.prl' \) \ + -exec perl -pi -e 's/-framework AGL//g' {} + + if find "$qt_prefix" -type f \( -name '*.conf' -o -name '*.prf' -o -name '*.prl' \) \ + -exec grep -l -- '-framework AGL' {} + | grep -q .; then + echo 'Failed to remove the obsolete AGL framework dependency.' >&2 + exit 1 + fi + + - name: Set up MSVC 2019 + if: runner.os == 'Windows' && startsWith(matrix.qt_version, '5.') uses: ilammy/msvc-dev-cmd@v1 with: toolset: 14.29 + - name: Set up MSVC 2022 + if: runner.os == 'Windows' && startsWith(matrix.qt_version, '6.') + uses: ilammy/msvc-dev-cmd@v1 + - name: Configure (Linux) if: runner.os == 'Linux' shell: bash @@ -80,7 +118,11 @@ jobs: run: | mkdir -p build-ci cd build-ci - qmake ../liteidex CONFIG+=release 'QMAKE_LIBS_OPENGL=-framework OpenGL' + qmake_args=(CONFIG+=release 'QMAKE_LIBS_OPENGL=-framework OpenGL') + if [[ '${{ matrix.qt_version }}' == 6.* ]]; then + qmake_args+=('QMAKE_CXXFLAGS+=-include arm_acle.h') + fi + qmake ../liteidex "${qmake_args[@]}" - name: Configure (Windows) if: runner.os == 'Windows' diff --git a/liteidex/deploy/welcome/css/style.css b/liteidex/deploy/welcome/css/style.css index 8c6f00df8..82c8619ed 100644 --- a/liteidex/deploy/welcome/css/style.css +++ b/liteidex/deploy/welcome/css/style.css @@ -1,10 +1,10 @@ body { text-align: left; margin: 0; - font-family: Helvetica, Arial, sans-serif; + font-family: Helvetica, Arial; } pre, code { - font-family: Menlo, monospace; + font-family: Menlo; } pre .comment { color: #375EAB; diff --git a/liteidex/liteidex.pri b/liteidex/liteidex.pri index 14c0004f3..fb6f4f2f3 100644 --- a/liteidex/liteidex.pri +++ b/liteidex/liteidex.pri @@ -19,6 +19,7 @@ isEmpty(IDE_LIBRARY_BASENAME) { } greaterThan(QT_MAJOR_VERSION, 4): QT += widgets printsupport +greaterThan(QT_MAJOR_VERSION, 5): QT += core5compat DEFINES += LITEAPP_LIBRARY diff --git a/liteidex/src/3rdparty/cplusplus/BackwardsScanner.cpp b/liteidex/src/3rdparty/cplusplus/BackwardsScanner.cpp index 0c89536c5..68c8834a4 100644 --- a/liteidex/src/3rdparty/cplusplus/BackwardsScanner.cpp +++ b/liteidex/src/3rdparty/cplusplus/BackwardsScanner.cpp @@ -117,10 +117,10 @@ QString BackwardsScanner::text(int index) const return _text.mid(firstToken.begin(), firstToken.length()); } -QStringRef BackwardsScanner::textRef(int index) const +QStringView BackwardsScanner::textRef(int index) const { const Token &firstToken = _tokens.at(index + _offset); - return _text.midRef(firstToken.begin(), firstToken.length()); + return QStringView(_text).mid(firstToken.begin(), firstToken.length()); } int BackwardsScanner::size() const diff --git a/liteidex/src/3rdparty/cplusplus/BackwardsScanner.h b/liteidex/src/3rdparty/cplusplus/BackwardsScanner.h index 20e00d049..0323abcfd 100644 --- a/liteidex/src/3rdparty/cplusplus/BackwardsScanner.h +++ b/liteidex/src/3rdparty/cplusplus/BackwardsScanner.h @@ -32,6 +32,7 @@ #include "SimpleLexer.h" #include +#include QT_FORWARD_DECLARE_CLASS(QTextCursor) @@ -56,7 +57,7 @@ class BackwardsScanner QString mid(int index) const; QString text(int index) const; - QStringRef textRef(int index) const; + QStringView textRef(int index) const; // 1-based Token LA(int index) const; diff --git a/liteidex/src/3rdparty/cplusplus/SimpleLexer.cpp b/liteidex/src/3rdparty/cplusplus/SimpleLexer.cpp index 388538620..494e86607 100644 --- a/liteidex/src/3rdparty/cplusplus/SimpleLexer.cpp +++ b/liteidex/src/3rdparty/cplusplus/SimpleLexer.cpp @@ -88,7 +88,7 @@ QList SimpleLexer::operator()(const QString &text, int state) break; } - QStringRef spell = text.midRef(lex.tokenOffset(), lex.tokenLength()); + QStringView spell(text.constData() + lex.tokenOffset(), lex.tokenLength()); lex.setScanAngleStringLiteralTokens(false); if (tk.f.newline && tk.is(T_POUND)) diff --git a/liteidex/src/3rdparty/diff_match_patch/diff_match_patch.cpp b/liteidex/src/3rdparty/diff_match_patch/diff_match_patch.cpp index 91f2bbbd2..eccf72b38 100644 --- a/liteidex/src/3rdparty/diff_match_patch/diff_match_patch.cpp +++ b/liteidex/src/3rdparty/diff_match_patch/diff_match_patch.cpp @@ -23,6 +23,7 @@ #include #include "liteapi/liteqt.h" #include "diff_match_patch.h" +#include ////////////////////////// @@ -65,7 +66,7 @@ QString Diff::strOperation(Operation op) { QString Diff::toString() const { QString prettyText = text; // Replace linebreaks with Pilcrow signs. - prettyText.replace('\n', L'\u00b6'); + prettyText.replace(QLatin1Char('\n'), QChar(0x00b6)); //qDebug(qPrintable(QString("Diff(") + strOperation(operation) + QString(",\"") // + prettyText + QString("\")"))); return QString("Diff(") + strOperation(operation) + QString(",\"") diff --git a/liteidex/src/3rdparty/fakevim/fakevim/fakevimhandler.cpp b/liteidex/src/3rdparty/fakevim/fakevim/fakevimhandler.cpp index 45c83c5f5..920ac73e0 100644 --- a/liteidex/src/3rdparty/fakevim/fakevim/fakevimhandler.cpp +++ b/liteidex/src/3rdparty/fakevim/fakevim/fakevimhandler.cpp @@ -70,6 +70,8 @@ #include #include #include +#include +#include #include #include #include @@ -426,7 +428,7 @@ static QRegExp vimPatternToQtPattern(QString needle, bool ignoreCaseOption, bool */ // FIXME: Option smartcase should be used only if search was typed by user. bool ignorecase = ignoreCaseOption - && !(smartCaseOption && needle.contains(QRegExp(_("[A-Z]")))); + && !(smartCaseOption && needle.contains(QRegularExpression(_("[A-Z]")))); QString pattern; pattern.reserve(2 * needle.size()); @@ -543,6 +545,19 @@ static bool afterEndOfLine(const QTextDocument *doc, int position) && doc->findBlock(position).length() > 1; } +static QTextCursor findRegExp(const QTextDocument *doc, const QRegExp &expression, + const QTextCursor &cursor) +{ +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + return doc->find(expression, cursor); +#else + QRegularExpression::PatternOptions options = QRegularExpression::NoPatternOption; + if (expression.caseSensitivity() == Qt::CaseInsensitive) + options |= QRegularExpression::CaseInsensitiveOption; + return doc->find(QRegularExpression(expression.pattern(), options), cursor); +#endif +} + static void searchForward(QTextCursor *tc, QRegExp &needleExp, int *repeat) { const QTextDocument *doc = tc->document(); @@ -552,13 +567,13 @@ static void searchForward(QTextCursor *tc, QRegExp &needleExp, int *repeat) tc->movePosition(StartOfLine); // forward to current position - *tc = doc->find(needleExp, *tc); + *tc = findRegExp(doc, needleExp, *tc); while (!tc->isNull() && tc->anchor() < startPos) { if (!tc->hasSelection()) tc->movePosition(Right); if (tc->atBlockEnd()) tc->movePosition(NextBlock); - *tc = doc->find(needleExp, *tc); + *tc = findRegExp(doc, needleExp, *tc); } if (tc->isNull()) @@ -571,7 +586,7 @@ static void searchForward(QTextCursor *tc, QRegExp &needleExp, int *repeat) tc->movePosition(Right); if (tc->atBlockEnd()) tc->movePosition(NextBlock); - *tc = doc->find(needleExp, *tc); + *tc = findRegExp(doc, needleExp, *tc); if (tc->isNull()) return; --*repeat; @@ -587,10 +602,10 @@ static void searchBackward(QTextCursor *tc, QRegExp &needleExp, int *repeat) QTextBlock block = tc->block(); QString line = block.text(); - int i = line.indexOf(needleExp, 0); + int i = needleExp.indexIn(line, 0); while (i != -1 && i < tc->positionInBlock()) { --*repeat; - i = line.indexOf(needleExp, i + qMax(1, needleExp.matchedLength())); + i = needleExp.indexIn(line, i + qMax(1, needleExp.matchedLength())); if (i == line.size()) i = -1; } @@ -603,10 +618,10 @@ static void searchBackward(QTextCursor *tc, QRegExp &needleExp, int *repeat) if (!block.isValid()) break; line = block.text(); - i = line.indexOf(needleExp, 0); + i = needleExp.indexIn(line, 0); while (i != -1) { --*repeat; - i = line.indexOf(needleExp, i + qMax(1, needleExp.matchedLength())); + i = needleExp.indexIn(line, i + qMax(1, needleExp.matchedLength())); if (i == line.size()) i = -1; } @@ -617,9 +632,9 @@ static void searchBackward(QTextCursor *tc, QRegExp &needleExp, int *repeat) return; } - i = line.indexOf(needleExp, 0); + i = needleExp.indexIn(line, 0); while (*repeat < 0) { - i = line.indexOf(needleExp, i + qMax(1, needleExp.matchedLength())); + i = needleExp.indexIn(line, i + qMax(1, needleExp.matchedLength())); ++*repeat; } tc->setPosition(block.position() + i); @@ -928,7 +943,7 @@ QString quoteUnprintable(const QString &ba) else if (cc == QLatin1Char('\n')) res += _(""); else - res += QString::fromLatin1("\\x%1").arg(c.unicode(), 2, 16, QLatin1Char('0')); + res += QString::fromLatin1("\\x%1").arg(static_cast(c.unicode()), 2, 16, QLatin1Char('0')); } return res; } @@ -1116,7 +1131,7 @@ class Input return QLatin1Char('\n'); if (m_key == Key_Escape) return QChar(27); - return m_xkey; + return QChar(m_xkey); } QString toString() const @@ -1310,7 +1325,7 @@ class CommandBuffer m_buffer = s; m_pos = m_userPos = pos; m_anchor = anchor >= 0 ? anchor : pos; } - QStringRef userContents() const { return m_buffer.leftRef(m_userPos); } + QStringRef userContents() const { return QStringRef(&m_buffer, 0, m_userPos); } const QChar &prompt() const { return m_prompt; } const QString &contents() const { return m_buffer; } bool isEmpty() const { return m_buffer.isEmpty(); } @@ -2579,7 +2594,7 @@ void FakeVimHandler::Private::commitInsertState() lastInsertion.prepend(QString(_("")).repeated(insertState.deletes)); // Remove indentation. - lastInsertion.replace(QRegExp(_("(^|\n)[\\t ]+")), _("\\1")); + lastInsertion.replace(QRegularExpression(_("(^|\n)[\\t ]+")), _("\\1")); } void FakeVimHandler::Private::invalidateInsertState() @@ -2672,8 +2687,8 @@ void FakeVimHandler::Private::importSelection() void FakeVimHandler::Private::updateEditor() { - const int charWidth = QFontMetrics(EDITOR(font())).width(QLatin1Char(' ')); - EDITOR(setTabStopWidth(charWidth * config(ConfigTabStop).toInt())); + const int charWidth = QFontMetrics(EDITOR(font())).horizontalAdvance(QLatin1Char(' ')); + EDITOR(setTabStopDistance(charWidth * config(ConfigTabStop).toInt())); setupCharClass(); } @@ -2683,8 +2698,8 @@ void FakeVimHandler::Private::restoreWidget(int tabSize) //updateMiniBuffer(); //EDITOR(removeEventFilter(q)); //EDITOR(setReadOnly(m_wasReadOnly)); - const int charWidth = QFontMetrics(EDITOR(font())).width(QLatin1Char(' ')); - EDITOR(setTabStopWidth(charWidth * tabSize)); + const int charWidth = QFontMetrics(EDITOR(font())).horizontalAdvance(QLatin1Char(' ')); + EDITOR(setTabStopDistance(charWidth * tabSize)); g.visualMode = NoVisualMode; // Force "ordinary" cursor. EDITOR(setOverwriteMode(false)); @@ -5384,7 +5399,7 @@ bool FakeVimHandler::Private::parseExCommmand(QString *line, ExCommand *cmd) cmd->cmd = line->mid(0, i).trimmed(); // command arguments starts with first non-letter character - cmd->args = cmd->cmd.section(QRegExp(_("(?=[^a-zA-Z])")), 1); + cmd->args = cmd->cmd.section(QRegularExpression(_("(?=[^a-zA-Z])")), 1); if (!cmd->args.isEmpty()) { cmd->cmd.chop(cmd->args.size()); cmd->args = cmd->args.trimmed(); @@ -5404,7 +5419,7 @@ bool FakeVimHandler::Private::parseExCommmand(QString *line, ExCommand *cmd) bool FakeVimHandler::Private::parseLineRange(QString *line, ExCommand *cmd) { // remove leading colons and spaces - line->remove(QRegExp(_("^\\s*(:+\\s*)*"))); + line->remove(QRegularExpression(_("^\\s*(:+\\s*)*"))); // special case ':!...' (use invalid range) if (line->startsWith(QLatin1Char('!'))) { @@ -5463,7 +5478,7 @@ bool FakeVimHandler::Private::handleExSubstituteCommand(const ExCommand &cmd) int count = 1; QString line = cmd.args; - const int countIndex = line.lastIndexOf(QRegExp(_("\\d+$"))); + const int countIndex = line.lastIndexOf(QRegularExpression(_("\\d+$"))); if (countIndex != -1) { count = line.mid(countIndex).toInt(); line = line.mid(0, countIndex).trimmed(); @@ -5611,8 +5626,8 @@ bool FakeVimHandler::Private::handleExMapCommand(const ExCommand &cmd0) // :map break; } - const QString lhs = args.section(QRegExp(_("\\s+")), 0, 0); - const QString rhs = args.section(QRegExp(_("\\s+")), 1); + const QString lhs = args.section(QRegularExpression(_("\\s+")), 0, 0); + const QString rhs = args.section(QRegularExpression(_("\\s+")), 1); if ((rhs.isNull() && type != Unmap) || (!rhs.isNull() && type == Unmap)) { // FIXME: Dump mappings here. //qDebug() << g.mappings; @@ -8244,7 +8259,7 @@ bool FakeVimHandler::Private::changeNumberTextObject(int count) // convert hexadecimal number to upper-case if last letter was upper-case if (hex) { - const int lastLetter = num.lastIndexOf(QRegExp(_("[a-fA-F]"))); + const int lastLetter = num.lastIndexOf(QRegularExpression(_("[a-fA-F]"))); if (lastLetter != -1 && num[lastLetter].isUpper()) repl = repl.toUpper(); } diff --git a/liteidex/src/3rdparty/ptyqt/core/iptyprocess.h b/liteidex/src/3rdparty/ptyqt/core/iptyprocess.h index 5a405626f..9fcaf2967 100755 --- a/liteidex/src/3rdparty/ptyqt/core/iptyprocess.h +++ b/liteidex/src/3rdparty/ptyqt/core/iptyprocess.h @@ -4,6 +4,9 @@ #include #include #include +#include +#include +#include //#ifdef Q_OS_WIN //#include diff --git a/liteidex/src/3rdparty/ptyqt/core/unixptyprocess.cpp b/liteidex/src/3rdparty/ptyqt/core/unixptyprocess.cpp index 1e960acb8..d14e13ec4 100644 --- a/liteidex/src/3rdparty/ptyqt/core/unixptyprocess.cpp +++ b/liteidex/src/3rdparty/ptyqt/core/unixptyprocess.cpp @@ -38,8 +38,8 @@ UnixPtyProcess::UnixPtyProcess() , m_readMasterNotify(0) { // m_shellProcess.setWorkingDirectory(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)); - connect(&m_shellProcess,SIGNAL(finished(int, QProcess::ExitStatus)),this,SLOT(finished(int, QProcess::ExitStatus))); - connect(&m_shellProcess,SIGNAL(stateChanged(QProcess::ProcessState)),this,SLOT(stateChanged(QProcess::ProcessState))); + QObject::connect(&m_shellProcess,SIGNAL(finished(int, QProcess::ExitStatus)),this,SLOT(finished(int, QProcess::ExitStatus))); + QObject::connect(&m_shellProcess,SIGNAL(stateChanged(QProcess::ProcessState)),this,SLOT(stateChanged(QProcess::ProcessState))); } UnixPtyProcess::~UnixPtyProcess() @@ -193,7 +193,7 @@ bool UnixPtyProcess::startProcess(const QString &shellPath, const QStringList &a m_readMasterNotify = new QSocketNotifier(m_shellProcess.m_handleMaster, QSocketNotifier::Read, &m_shellProcess); m_readMasterNotify->setEnabled(true); m_readMasterNotify->moveToThread(m_shellProcess.thread()); - connect(m_readMasterNotify,SIGNAL(activated(int)),this,SLOT(readActivated(int))); + QObject::connect(m_readMasterNotify,SIGNAL(activated(int)),this,SLOT(readActivated(int))); // QObject::connect(m_readMasterNotify, &QSocketNotifier::activated, [this](int socket) // { // Q_UNUSED(socket) @@ -248,10 +248,15 @@ bool UnixPtyProcess::startProcess(const QString &shellPath, const QStringList &a m_shellProcess.setWorkingDirectory(workingDirectory); m_shellProcess.setProcessEnvironment(envFormat); m_shellProcess.setReadChannel(QProcess::StandardOutput); +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + m_shellProcess.setChildProcessModifier([this]() { + m_shellProcess.setupPtyChildProcess(); + }); +#endif m_shellProcess.start(m_shellPath, arguments); m_shellProcess.waitForStarted(); - m_pid = m_shellProcess.pid(); + m_pid = m_shellProcess.processId(); resize(cols, rows); @@ -427,7 +432,14 @@ void UnixPtyProcess::moveToThread(QThread *targetThread) m_shellProcess.moveToThread(targetThread); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void ShellProcess::setupChildProcess() +{ + setupPtyChildProcess(); +} +#endif + +void ShellProcess::setupPtyChildProcess() { dup2(m_handleSlave, STDIN_FILENO); dup2(m_handleSlave, STDOUT_FILENO); diff --git a/liteidex/src/3rdparty/ptyqt/core/unixptyprocess.h b/liteidex/src/3rdparty/ptyqt/core/unixptyprocess.h index 6ff35a221..774c27bb1 100755 --- a/liteidex/src/3rdparty/ptyqt/core/unixptyprocess.h +++ b/liteidex/src/3rdparty/ptyqt/core/unixptyprocess.h @@ -24,9 +24,12 @@ class ShellProcess : public QProcess } int m_sid; protected: - virtual void setupChildProcess(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + void setupChildProcess() override; +#endif private: + void setupPtyChildProcess(); int m_handleMaster, m_handleSlave; QString m_handleSlaveName; }; diff --git a/liteidex/src/3rdparty/qjson/src/json_parser.cc b/liteidex/src/3rdparty/qjson/src/json_parser.cc index 620e135a8..face20a99 100644 --- a/liteidex/src/3rdparty/qjson/src/json_parser.cc +++ b/liteidex/src/3rdparty/qjson/src/json_parser.cc @@ -420,7 +420,8 @@ namespace yy { QVariantMap members = (yysemantic_stack_[(2) - (2)]).toMap(); (yysemantic_stack_[(2) - (2)]) = QVariant(); // Allow reuse of map - (yyval) = QVariant(members.unite ((yysemantic_stack_[(2) - (1)]).toMap())); + members.insert((yysemantic_stack_[(2) - (1)]).toMap()); + (yyval) = QVariant(members); ;} break; @@ -434,7 +435,8 @@ namespace yy { QVariantMap members = (yysemantic_stack_[(3) - (3)]).toMap(); (yysemantic_stack_[(3) - (3)]) = QVariant(); // Allow reuse of map - (yyval) = QVariant(members.unite ((yysemantic_stack_[(3) - (2)]).toMap())); + members.insert((yysemantic_stack_[(3) - (2)]).toMap()); + (yyval) = QVariant(members); ;} break; @@ -1113,4 +1115,3 @@ void yy::json_parser::error (const yy::location& yyloc, qjsonDebug() << "json_parser::error [line" << yyloc.end.line << "] -" << error.c_str() ; driver->setError(QString::fromLatin1(error.c_str()), yyloc.end.line); } - diff --git a/liteidex/src/3rdparty/qjson/src/json_parser.yy b/liteidex/src/3rdparty/qjson/src/json_parser.yy index 2540889ba..7f11ed5c6 100644 --- a/liteidex/src/3rdparty/qjson/src/json_parser.yy +++ b/liteidex/src/3rdparty/qjson/src/json_parser.yy @@ -101,14 +101,16 @@ members: /* empty */ { $$ = QVariant (QVariantMap()); } | pair r_members { QVariantMap members = $2.toMap(); $2 = QVariant(); // Allow reuse of map - $$ = QVariant(members.unite ($1.toMap())); + members.insert($1.toMap()); + $$ = QVariant(members); }; r_members: /* empty */ { $$ = QVariant (QVariantMap()); } | COMMA pair r_members { QVariantMap members = $3.toMap(); $3 = QVariant(); // Allow reuse of map - $$ = QVariant(members.unite ($2.toMap())); + members.insert($2.toMap()); + $$ = QVariant(members); }; pair: string COLON value { diff --git a/liteidex/src/3rdparty/qjson/src/json_scanner.cpp b/liteidex/src/3rdparty/qjson/src/json_scanner.cpp index de0ddc23c..a8db5d5fd 100644 --- a/liteidex/src/3rdparty/qjson/src/json_scanner.cpp +++ b/liteidex/src/3rdparty/qjson/src/json_scanner.cpp @@ -25,7 +25,7 @@ #include #include -#include +#include #include @@ -374,4 +374,3 @@ int JSonScanner::yylex(YYSTYPE* yylval, yy::location *yylloc) return -1; } - diff --git a/liteidex/src/3rdparty/qjson/src/serializer.cpp b/liteidex/src/3rdparty/qjson/src/serializer.cpp index 41407c274..266a30b54 100644 --- a/liteidex/src/3rdparty/qjson/src/serializer.cpp +++ b/liteidex/src/3rdparty/qjson/src/serializer.cpp @@ -22,6 +22,7 @@ #include "serializer.h" #include +#include #include #include diff --git a/liteidex/src/3rdparty/qjsonrpc/src/qjsonrpcservice.cpp b/liteidex/src/3rdparty/qjsonrpc/src/qjsonrpcservice.cpp index f24f5ddef..84c8e8e48 100644 --- a/liteidex/src/3rdparty/qjsonrpc/src/qjsonrpcservice.cpp +++ b/liteidex/src/3rdparty/qjsonrpc/src/qjsonrpcservice.cpp @@ -280,7 +280,9 @@ static inline QVariant convertArgument(const QJsonValue &argument, const QJsonRpcServicePrivate::ParameterInfo &info) { if (argument.isUndefined()) -#if QT_VERSION >= 0x050000 +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + return QVariant(QMetaType(info.type), Q_NULLPTR); +#elif QT_VERSION >= 0x050000 return QVariant(info.type, Q_NULLPTR); #else return QVariant(info.type, (const void *) NULL); @@ -368,7 +370,7 @@ QJsonValue QJsonRpcServicePrivate::convertReturnValue(QVariant &returnValue) static inline QByteArray methodName(const QJsonRpcMessage &request) { const QString &methodPath(request.method()); - return methodPath.midRef(methodPath.lastIndexOf('.') + 1).toLatin1(); + return methodPath.mid(methodPath.lastIndexOf('.') + 1).toLatin1(); } QJsonRpcMessage QJsonRpcService::dispatch(const QJsonRpcMessage &request) @@ -403,7 +405,10 @@ QJsonRpcMessage QJsonRpcService::dispatch(const QJsonRpcMessage &request) idx = methodIndex; arguments.reserve(info.parameters.size()); returnType = static_cast(info.returnType); -#if QT_VERSION >= 0x050000 +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + returnValue = (returnType == QMetaType::Void) ? + QVariant() : QVariant(QMetaType(returnType), Q_NULLPTR); +#elif QT_VERSION >= 0x050000 returnValue = (returnType == QMetaType::Void) ? QVariant() : QVariant(returnType, Q_NULLPTR); #else diff --git a/liteidex/src/3rdparty/qt_browser/chasewidget.cpp b/liteidex/src/3rdparty/qt_browser/chasewidget.cpp index 6e90e9aeb..65e709b28 100644 --- a/liteidex/src/3rdparty/qt_browser/chasewidget.cpp +++ b/liteidex/src/3rdparty/qt_browser/chasewidget.cpp @@ -104,7 +104,7 @@ void ChaseWidget::paintEvent(QPaintEvent *event) if(m_animated) p.setBrush(colorForSegment(segment)); else - p.setBrush(palette().background()); + p.setBrush(palette().brush(QPalette::Window)); p.drawEllipse(QRect(displ, -ext / 2, ext, ext)); } } @@ -139,4 +139,3 @@ void ChaseWidget::setPixmapEnabled(bool enable) { m_pixmapEnabled = enable; } - diff --git a/liteidex/src/3rdparty/qtc_editutil/uncommentselection.cpp b/liteidex/src/3rdparty/qtc_editutil/uncommentselection.cpp index 52a79679b..34ca832d4 100644 --- a/liteidex/src/3rdparty/qtc_editutil/uncommentselection.cpp +++ b/liteidex/src/3rdparty/qtc_editutil/uncommentselection.cpp @@ -286,7 +286,7 @@ void Utils::unCommentSelection(QPlainTextEdit *edit, CommentFlag flag, const Com singleLineLength); if (definition.isAfterWhiteSpacesAddSpace()) { if (i < text.size()-singleLineLength) { - if (text.at(i+singleLineLength) == 0x0020) { + if (text.at(i+singleLineLength) == QChar(0x0020)) { cursor.movePosition(QTextCursor::NextCharacter,QTextCursor::KeepAnchor,1); } } diff --git a/liteidex/src/3rdparty/qtc_gdbmi/gdbmi.cpp b/liteidex/src/3rdparty/qtc_gdbmi/gdbmi.cpp index 631badd96..145a88cdb 100644 --- a/liteidex/src/3rdparty/qtc_gdbmi/gdbmi.cpp +++ b/liteidex/src/3rdparty/qtc_gdbmi/gdbmi.cpp @@ -278,9 +278,9 @@ inline ST escapeCStringTpl(const ST &ba) default: if (c < 32 || c == 127) { ret += '\\'; - ret += '0' + (c >> 6); - ret += '0' + ((c >> 3) & 7); - ret += '0' + (c & 7); + ret += CT('0' + (c >> 6)); + ret += CT('0' + ((c >> 3) & 7)); + ret += CT('0' + (c & 7)); } else { ret += c; } diff --git a/liteidex/src/3rdparty/qtc_searchresult/searchresulttreeitemdelegate.cpp b/liteidex/src/3rdparty/qtc_searchresult/searchresulttreeitemdelegate.cpp index 3f9e9b209..4e6c33574 100644 --- a/liteidex/src/3rdparty/qtc_searchresult/searchresulttreeitemdelegate.cpp +++ b/liteidex/src/3rdparty/qtc_searchresult/searchresulttreeitemdelegate.cpp @@ -49,7 +49,7 @@ void SearchResultTreeItemDelegate::paint(QPainter *painter, const QStyleOptionVi painter->save(); - QStyleOptionViewItemV3 opt = setOptions(index, option); + QStyleOptionViewItem opt = setOptions(index, option); painter->setFont(opt.font); QItemDelegate::drawBackground(painter, opt, index); @@ -104,7 +104,7 @@ void SearchResultTreeItemDelegate::paint(QPainter *painter, const QStyleOptionVi } // returns the width of the line number area -int SearchResultTreeItemDelegate::drawLineNumber(QPainter *painter, const QStyleOptionViewItemV3 &option, +int SearchResultTreeItemDelegate::drawLineNumber(QPainter *painter, const QStyleOptionViewItem &option, const QRect &rect, const QModelIndex &index) const { @@ -115,7 +115,7 @@ int SearchResultTreeItemDelegate::drawLineNumber(QPainter *painter, const QStyle const bool isSelected = option.state & QStyle::State_Selected; QString lineText = QString::number(lineNumber); int minimumLineNumberDigits = qMax((int)m_minimumLineNumberDigits, lineText.count()); - int fontWidth = painter->fontMetrics().width(QString(minimumLineNumberDigits, QLatin1Char('0'))); + int fontWidth = painter->fontMetrics().horizontalAdvance(QString(minimumLineNumberDigits, QLatin1Char('0'))); int lineNumberAreaWidth = lineNumberAreaHorizontalPadding + fontWidth + lineNumberAreaHorizontalPadding; QRect lineNumberAreaRect(rect); lineNumberAreaRect.setWidth(lineNumberAreaWidth); @@ -130,7 +130,7 @@ int SearchResultTreeItemDelegate::drawLineNumber(QPainter *painter, const QStyle option.palette.brush(cg, QPalette::Highlight) : option.palette.color(cg, QPalette::Base).darker(111))); - QStyleOptionViewItemV3 opt = option; + QStyleOptionViewItem opt = option; opt.displayAlignment = Qt::AlignRight | Qt::AlignVCenter; opt.palette.setColor(cg, QPalette::Text, Qt::darkGray); @@ -165,8 +165,8 @@ void SearchResultTreeItemDelegate::drawText(QPainter *painter, // clip searchTermLength to end of line searchTermLength = qMin(searchTermLength, text.length() - searchTermStart); const int textMargin = QApplication::style()->pixelMetric(QStyle::PM_FocusFrameHMargin) + 1; - int searchTermStartPixels = painter->fontMetrics().width(text.left(searchTermStart)); - int searchTermLengthPixels = painter->fontMetrics().width(text.mid(searchTermStart, searchTermLength)); + int searchTermStartPixels = painter->fontMetrics().horizontalAdvance(text.left(searchTermStart)); + int searchTermLengthPixels = painter->fontMetrics().horizontalAdvance(text.mid(searchTermStart, searchTermLength)); // rects QRect beforeHighlightRect(rect); diff --git a/liteidex/src/3rdparty/qtc_searchresult/searchresulttreeitemdelegate.h b/liteidex/src/3rdparty/qtc_searchresult/searchresulttreeitemdelegate.h index e91882bd7..a7b238b0d 100644 --- a/liteidex/src/3rdparty/qtc_searchresult/searchresulttreeitemdelegate.h +++ b/liteidex/src/3rdparty/qtc_searchresult/searchresulttreeitemdelegate.h @@ -31,6 +31,7 @@ #define SEARCHRESULTTREEITEMDELEGATE_H #include +#include namespace Find { namespace Internal { @@ -42,7 +43,7 @@ class SearchResultTreeItemDelegate: public QItemDelegate void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const; private: - int drawLineNumber(QPainter *painter, const QStyleOptionViewItemV3 &option, const QRect &rect, const QModelIndex &index) const; + int drawLineNumber(QPainter *painter, const QStyleOptionViewItem &option, const QRect &rect, const QModelIndex &index) const; void drawText(QPainter *painter, const QStyleOptionViewItem &option, const QRect &rect, const QModelIndex &index) const; diff --git a/liteidex/src/3rdparty/qtc_searchresult/searchresulttreeitems.cpp b/liteidex/src/3rdparty/qtc_searchresult/searchresulttreeitems.cpp index a49e4d03e..55bd89609 100644 --- a/liteidex/src/3rdparty/qtc_searchresult/searchresulttreeitems.cpp +++ b/liteidex/src/3rdparty/qtc_searchresult/searchresulttreeitems.cpp @@ -106,7 +106,7 @@ static bool lessThanByText(SearchResultTreeItem *a, const QString &b) int SearchResultTreeItem::insertionIndex(const QString &text, SearchResultTreeItem **existingItem) const { QList::const_iterator insertionPosition = - qLowerBound(m_children.begin(), m_children.end(), text, lessThanByText); + std::lower_bound(m_children.begin(), m_children.end(), text, lessThanByText); if (existingItem) { if (insertionPosition != m_children.end() && (*insertionPosition)->item.text == text) (*existingItem) = (*insertionPosition); diff --git a/liteidex/src/3rdparty/qtc_searchresult/searchresulttreemodel.cpp b/liteidex/src/3rdparty/qtc_searchresult/searchresulttreemodel.cpp index 2168646ce..f13a6395d 100644 --- a/liteidex/src/3rdparty/qtc_searchresult/searchresulttreemodel.cpp +++ b/liteidex/src/3rdparty/qtc_searchresult/searchresulttreemodel.cpp @@ -217,9 +217,9 @@ bool SearchResultTreeModel::setCheckState(const QModelIndex &idx, Qt::CheckState // check children if (int children = item->childrenCount()) { for (int i = 0; i < children; ++i) { - setCheckState(idx.child(i, 0), checkState, false); + setCheckState(index(i, 0, idx), checkState, false); } - emit dataChanged(idx.child(0, 0), idx.child(children-1, 0)); + emit dataChanged(index(0, 0, idx), index(children-1, 0, idx)); } return true; } @@ -256,7 +256,7 @@ QVariant SearchResultTreeModel::data(const SearchResultTreeItem *row, int role) result = row->item.text; break; case ItemDataRoles::ResultItemRole: - result = qVariantFromValue(row->item); + result = QVariant::fromValue(row->item); break; case ItemDataRoles::ResultLineNumberRole: result = row->item.lineNumber; @@ -354,7 +354,7 @@ void SearchResultTreeModel::addResultsToCurrentParent(const QListsetGenerated(false); existingItem->item = item; - QModelIndex itemIndex = m_currentIndex.child(insertionIndex, 0); + QModelIndex itemIndex = index(insertionIndex, 0, m_currentIndex); dataChanged(itemIndex, itemIndex); } else { beginInsertRows(m_currentIndex, insertionIndex, insertionIndex); @@ -389,7 +389,7 @@ QList SearchResultTreeModel::addResults(const QList pathNodes; QList sortedItems = items; - qStableSort(sortedItems.begin(), sortedItems.end(), lessThanByPath); + std::stable_sort(sortedItems.begin(), sortedItems.end(), lessThanByPath); QList itemSet; foreach (const SearchResultItem &item, sortedItems) { m_editorFontIsUsed |= item.useTextEditorFont; @@ -433,7 +433,7 @@ QModelIndex SearchResultTreeModel::nextIndex(const QModelIndex &idx, bool *wrapp if (rowCount(idx) > 0) { // node with children - return idx.child(0, 0); + return index(0, 0, idx); } // leaf node QModelIndex nextIndex; diff --git a/liteidex/src/3rdparty/qtc_searchresult/searchresultwidget.cpp b/liteidex/src/3rdparty/qtc_searchresult/searchresultwidget.cpp index dc4c90ba9..63721bf50 100644 --- a/liteidex/src/3rdparty/qtc_searchresult/searchresultwidget.cpp +++ b/liteidex/src/3rdparty/qtc_searchresult/searchresultwidget.cpp @@ -63,8 +63,8 @@ class WideEnoughLineEdit : public QLineEdit { ~WideEnoughLineEdit(){} QSize sizeHint() const { QSize sh = QLineEdit::minimumSizeHint(); - sh.rwidth() += qMax(25 * fontMetrics().width(QLatin1Char('x')), - fontMetrics().width(text())); + sh.rwidth() += qMax(25 * fontMetrics().horizontalAdvance(QLatin1Char('x')), + fontMetrics().horizontalAdvance(text())); return sh; } public slots: @@ -86,7 +86,7 @@ SearchResultWidget::SearchResultWidget(QWidget *parent) : m_cancelSupported(true) { QVBoxLayout *layout = new QVBoxLayout(this); - layout->setMargin(2); + layout->setContentsMargins(2, 2, 2, 2); layout->setSpacing(1); setLayout(layout); @@ -99,7 +99,7 @@ SearchResultWidget::SearchResultWidget(QWidget *parent) : topWidget->setLineWidth(0); //topWidget->setAutoFillBackground(true); QHBoxLayout *topLayout = new QHBoxLayout(topWidget); - topLayout->setMargin(0); + topLayout->setContentsMargins(0, 0, 0, 0); topWidget->setLayout(topLayout); layout->addWidget(topWidget); @@ -113,7 +113,7 @@ SearchResultWidget::SearchResultWidget(QWidget *parent) : //m_infoWidget->setAutoFillBackground(true); QHBoxLayout *infoLayout = new QHBoxLayout(m_infoWidget); - infoLayout->setMargin(2); + infoLayout->setContentsMargins(2, 2, 2, 2); m_infoLabel = new QLabel(); infoLayout->addWidget(m_infoLabel); layout->addWidget(m_infoWidget); @@ -127,7 +127,7 @@ SearchResultWidget::SearchResultWidget(QWidget *parent) : m_messageWidget->setLineWidth(0); //m_messageWidget->setAutoFillBackground(true); QHBoxLayout *messageLayout = new QHBoxLayout(m_messageWidget); - messageLayout->setMargin(2); + messageLayout->setContentsMargins(2, 2, 2, 2); m_messageWidget->setLayout(messageLayout); QLabel *messageLabel = new QLabel(tr("Search was canceled.")); //messageLabel->setPalette(pal); @@ -150,7 +150,7 @@ SearchResultWidget::SearchResultWidget(QWidget *parent) : m_descriptionContainer = new QWidget(topWidget); QHBoxLayout *descriptionLayout = new QHBoxLayout(m_descriptionContainer); m_descriptionContainer->setLayout(descriptionLayout); - descriptionLayout->setMargin(0); + descriptionLayout->setContentsMargins(0, 0, 0, 0); m_descriptionContainer->setMinimumWidth(200); m_descriptionContainer->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed); m_label = new QLabel(m_descriptionContainer); diff --git a/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/dynamicrule.h b/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/dynamicrule.h index 6512ffed2..15748c0b1 100644 --- a/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/dynamicrule.h +++ b/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/dynamicrule.h @@ -36,10 +36,6 @@ #include "rule.h" -QT_BEGIN_NAMESPACE -class QStringList; -QT_END_NAMESPACE - namespace TextEditor { namespace Internal { diff --git a/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/highlightdefinitionhandler.h b/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/highlightdefinitionhandler.h index b5ff760e3..bd387e7b0 100644 --- a/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/highlightdefinitionhandler.h +++ b/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/highlightdefinitionhandler.h @@ -39,7 +39,11 @@ #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif namespace TextEditor { namespace Internal { diff --git a/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/manager2.cpp b/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/manager2.cpp index d29260cfb..3df8fbff5 100644 --- a/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/manager2.cpp +++ b/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/manager2.cpp @@ -126,7 +126,7 @@ void Manager2::loadPath(const QStringList &definitionsPaths) } // Consider definitions with higher priority first. - qSort(allMetaData.begin(), allMetaData.end(), PriorityComp()); + std::sort(allMetaData.begin(), allMetaData.end(), PriorityComp()); foreach (const QSharedPointer &metaData, allMetaData) { if (m_idByName.contains(metaData->name())) diff --git a/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/manager2.h b/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/manager2.h index 03e633619..4c1f93dac 100644 --- a/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/manager2.h +++ b/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/manager2.h @@ -42,12 +42,12 @@ #include #include #include +#include #include #include QT_BEGIN_NAMESPACE class QFileInfo; -class QStringList; class QIODevice; template class QFutureInterface; template class QSharedPointer; diff --git a/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/rule.cpp b/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/rule.cpp index c62168f8b..8452e4174 100644 --- a/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/rule.cpp +++ b/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/rule.cpp @@ -155,7 +155,11 @@ bool Rule::charPredicateMatchSucceed(const QString &text, ProgressData *progress, bool (QChar::* predicate)() const) const { +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + return predicateMatchSucceed(text, length, progress, std::mem_fn(predicate)); +#else return predicateMatchSucceed(text, length, progress, std::mem_fun_ref(predicate)); +#endif } bool Rule::charPredicateMatchSucceed(const QString &text, @@ -163,7 +167,11 @@ bool Rule::charPredicateMatchSucceed(const QString &text, ProgressData *progress, bool (*predicate)(const QChar &)) const { +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + return predicateMatchSucceed(text, length, progress, predicate); +#else return predicateMatchSucceed(text, length, progress, std::ptr_fun(predicate)); +#endif } bool Rule::matchSucceed(const QString &text, const int length, ProgressData *progress) diff --git a/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/specificrules.h b/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/specificrules.h index 88659e92e..7de039b3c 100644 --- a/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/specificrules.h +++ b/liteidex/src/3rdparty/qtc_texteditor/generichighlighter/specificrules.h @@ -39,7 +39,7 @@ #include #include -#include +#include #include namespace TextEditor { diff --git a/liteidex/src/3rdparty/qtc_texteditor/itexteditor.cpp b/liteidex/src/3rdparty/qtc_texteditor/itexteditor.cpp index 4f080c67b..9ff241ff1 100644 --- a/liteidex/src/3rdparty/qtc_texteditor/itexteditor.cpp +++ b/liteidex/src/3rdparty/qtc_texteditor/itexteditor.cpp @@ -35,7 +35,7 @@ //#include -#include +#include #include using namespace TextEditor; diff --git a/liteidex/src/3rdparty/qtc_texteditor/itexteditor.h b/liteidex/src/3rdparty/qtc_texteditor/itexteditor.h index d92fce7f2..c1af5fafe 100644 --- a/liteidex/src/3rdparty/qtc_texteditor/itexteditor.h +++ b/liteidex/src/3rdparty/qtc_texteditor/itexteditor.h @@ -43,6 +43,7 @@ #include #include #include +#include QT_BEGIN_NAMESPACE class QIcon; diff --git a/liteidex/src/3rdparty/qtc_texteditor/syntaxhighlighter.cpp b/liteidex/src/3rdparty/qtc_texteditor/syntaxhighlighter.cpp index 3db901b3d..5e47fd4cc 100644 --- a/liteidex/src/3rdparty/qtc_texteditor/syntaxhighlighter.cpp +++ b/liteidex/src/3rdparty/qtc_texteditor/syntaxhighlighter.cpp @@ -111,14 +111,18 @@ void SyntaxHighlighterPrivate::applyFormatChanges(int from, int charsRemoved, in QTextLayout *layout = currentBlock.layout(); - QList ranges = layout->additionalFormats(); +#if QT_VERSION < QT_VERSION_CHECK(5, 6, 0) + FormatRangeList ranges = layout->additionalFormats(); +#else + FormatRangeList ranges = layout->formats(); +#endif bool doAdjustRange = currentBlock.contains(from); - QList old_ranges; + FormatRangeList old_ranges; if (!ranges.isEmpty()) { - QList::Iterator it = ranges.begin(); + FormatRangeList::Iterator it = ranges.begin(); while (it != ranges.end()) { if (it->format.property(QTextFormat::UserProperty).toBool()) { if (doAdjustRange) @@ -137,7 +141,7 @@ void SyntaxHighlighterPrivate::applyFormatChanges(int from, int charsRemoved, in QTextLayout::FormatRange r; r.start = -1; - QList new_ranges; + FormatRangeList new_ranges; int i = 0; while (i < formatChanges.count()) { @@ -178,7 +182,11 @@ void SyntaxHighlighterPrivate::applyFormatChanges(int from, int charsRemoved, in if (formatsChanged) { ranges.append(new_ranges); +#if QT_VERSION < QT_VERSION_CHECK(5, 6, 0) layout->setAdditionalFormats(ranges); +#else + layout->setFormats(ranges); +#endif doc->markContentsDirty(currentBlock.position(), currentBlock.length()); } } @@ -421,8 +429,13 @@ void SyntaxHighlighter::setDocument(QTextDocument *doc) QTextCursor cursor(d->doc); cursor.beginEditBlock(); - for (QTextBlock blk = d->doc->begin(); blk.isValid(); blk = blk.next()) + for (QTextBlock blk = d->doc->begin(); blk.isValid(); blk = blk.next()) { +#if QT_VERSION < QT_VERSION_CHECK(5, 6, 0) blk.layout()->clearAdditionalFormats(); +#else + blk.layout()->clearFormats(); +#endif + } cursor.endEditBlock(); } d->doc = doc; @@ -758,7 +771,7 @@ static bool byStartOfRange(const QTextLayout::FormatRange &range, const QTextLay } void SyntaxHighlighter::setExtraAdditionalFormats(const QTextBlock& block, - const QList &fmts) + const FormatRangeList &fmts) { // qDebug() << "setAdditionalFormats() on block" << block.blockNumber(); @@ -771,18 +784,22 @@ void SyntaxHighlighter::setExtraAdditionalFormats(const QTextBlock& block, if (block.layout() == 0) return; - QList formats; + FormatRangeList formats; formats.reserve(fmts.size()); foreach (QTextLayout::FormatRange r, fmts) { r.format.setProperty(QTextFormat::UserProperty, true); formats.append(r); } - qSort(formats.begin(), formats.end(), byStartOfRange); + std::sort(formats.begin(), formats.end(), byStartOfRange); - QList previousSemanticFormats; - QList formatsToApply; + FormatRangeList previousSemanticFormats; + FormatRangeList formatsToApply; - const QList all = block.layout()->additionalFormats(); +#if QT_VERSION < QT_VERSION_CHECK(5, 6, 0) + const FormatRangeList all = block.layout()->additionalFormats(); +#else + const FormatRangeList all = block.layout()->formats(); +#endif foreach (const QTextLayout::FormatRange &r, all) { if (r.format.hasProperty(QTextFormat::UserProperty)) previousSemanticFormats.append(r); @@ -791,7 +808,7 @@ void SyntaxHighlighter::setExtraAdditionalFormats(const QTextBlock& block, } if (formats.size() == previousSemanticFormats.size()) { - qSort(previousSemanticFormats.begin(), previousSemanticFormats.end(), byStartOfRange); + std::sort(previousSemanticFormats.begin(), previousSemanticFormats.end(), byStartOfRange); int index = 0; for (; index != formats.size(); ++index) { @@ -812,7 +829,11 @@ void SyntaxHighlighter::setExtraAdditionalFormats(const QTextBlock& block, bool wasInReformatBlocks = d->inReformatBlocks; d->inReformatBlocks = true; +#if QT_VERSION < QT_VERSION_CHECK(5, 6, 0) block.layout()->setAdditionalFormats(formatsToApply); +#else + block.layout()->setFormats(formatsToApply); +#endif document()->markContentsDirty(block.position(), block.length()-1); d->inReformatBlocks = wasInReformatBlocks; } diff --git a/liteidex/src/3rdparty/qtc_texteditor/syntaxhighlighter.h b/liteidex/src/3rdparty/qtc_texteditor/syntaxhighlighter.h index 4623a7f89..5b61e22b3 100644 --- a/liteidex/src/3rdparty/qtc_texteditor/syntaxhighlighter.h +++ b/liteidex/src/3rdparty/qtc_texteditor/syntaxhighlighter.h @@ -45,6 +45,7 @@ #include "texteditor_global.h" #include +#include #include QT_BEGIN_NAMESPACE @@ -59,6 +60,12 @@ QT_END_NAMESPACE namespace TextEditor { +#if QT_VERSION < QT_VERSION_CHECK(5, 6, 0) +typedef QList FormatRangeList; +#else +typedef QVector FormatRangeList; +#endif + class SyntaxHighlighterPrivate; struct SyntaxComment { @@ -122,7 +129,7 @@ class TEXTEDITOR_EXPORT SyntaxHighlighter : public QObject return m_contextMap[id]; } - void setExtraAdditionalFormats(const QTextBlock& block, const QList &formats); + void setExtraAdditionalFormats(const QTextBlock& block, const FormatRangeList &formats); void configureFormat(TextFormatId id, const QTextCharFormat &format); virtual void setTabSize(int tabSize); public: diff --git a/liteidex/src/api/liteapi/liteapi.h b/liteidex/src/api/liteapi/liteapi.h index f9cf0439a..55d993d72 100644 --- a/liteidex/src/api/liteapi/liteapi.h +++ b/liteidex/src/api/liteapi/liteapi.h @@ -650,7 +650,9 @@ class IDockManager : public IManager const QString &title, Qt::DockWidgetArea ares = Qt::LeftDockWidgetArea, Qt::DockWidgetAreas alowedAreas = Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea, - QDockWidget::DockWidgetFeatures features = QDockWidget::AllDockWidgetFeatures) = 0; + QDockWidget::DockWidgetFeatures features = QDockWidget::DockWidgetClosable | + QDockWidget::DockWidgetMovable | + QDockWidget::DockWidgetFloatable) = 0; virtual void removeDock(QWidget *widget) = 0; virtual void showDock(QWidget *widget) = 0; virtual void hideDock(QWidget *widget) = 0; @@ -957,4 +959,3 @@ Q_DECLARE_INTERFACE(LiteApi::IPluginFactory,"LiteApi.IPluginFactory.X37") #endif //LITEAPI_H - diff --git a/liteidex/src/api/liteapi/liteqt.h b/liteidex/src/api/liteapi/liteqt.h index 7ba2595d4..b73c7466c 100644 --- a/liteidex/src/api/liteapi/liteqt.h +++ b/liteidex/src/api/liteapi/liteqt.h @@ -3,6 +3,10 @@ #include #include +#include +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +#include +#endif #if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) #define qtKeepEmptyParts Qt::KeepEmptyParts @@ -12,5 +16,14 @@ #define qtSkipEmptyParts QString::SkipEmptyParts #endif +inline void qtSetUtf8Encoding(QTextStream &stream) +{ +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + stream.setEncoding(QStringConverter::Utf8); +#else + stream.setCodec("UTF-8"); +#endif +} + #endif // LITEQT_H diff --git a/liteidex/src/liteapp/editormanager.cpp b/liteidex/src/liteapp/editormanager.cpp index 29027c28c..e3adef151 100644 --- a/liteidex/src/liteapp/editormanager.cpp +++ b/liteidex/src/liteapp/editormanager.cpp @@ -31,6 +31,7 @@ #include #include #include +#include #include #include #include @@ -115,7 +116,7 @@ bool EditorManager::initWithApp(IApplication *app) //m_editorTabWidget->tabBar()->setIconSize(LiteApi::getToolBarIconSize()); QVBoxLayout *mainLayout = new QVBoxLayout; - mainLayout->setMargin(0); + mainLayout->setContentsMargins(0, 0, 0, 0); mainLayout->setSpacing(0); // QToolBar *toolBar = m_editorTabWidget->headerToolBar(); @@ -1232,4 +1233,3 @@ void EditorManager::closeEditorForTab(int index) IEditor *ed = m_widgetEditorMap.value(w,0); closeEditor(ed); } - diff --git a/liteidex/src/liteapp/filemanager.cpp b/liteidex/src/liteapp/filemanager.cpp index 0b8beea36..66fad801d 100644 --- a/liteidex/src/liteapp/filemanager.cpp +++ b/liteidex/src/liteapp/filemanager.cpp @@ -46,6 +46,7 @@ #include #include #include +#include #include #include //lite_memory_check_begin @@ -120,7 +121,7 @@ bool FileManager::initWithApp(IApplication *app) m_folderWidget = new QWidget; m_layout = new QVBoxLayout; - m_layout->setMargin(0); + m_layout->setContentsMargins(0, 0, 0, 0); m_folderWidget->setLayout(m_layout); m_layout->addWidget(m_folderWindow->widget()); @@ -660,7 +661,7 @@ void FileManager::checkForReload() int lastReloadRet = QMessageBox::Yes; int lastCloseRet = QMessageBox::Yes; - QStringList files = m_changedFiles.toList(); + QStringList files = m_changedFiles.values(); m_changedFiles.clear(); foreach (QString fileName, files) { if (!QFile::exists(fileName)) { @@ -751,4 +752,3 @@ void FileManager::checkForReload() QTimer::singleShot(200, this, SLOT(checkForReload())); } - diff --git a/liteidex/src/liteapp/liteapp.cpp b/liteidex/src/liteapp/liteapp.cpp index aed788a00..7cb9cb7e5 100644 --- a/liteidex/src/liteapp/liteapp.cpp +++ b/liteidex/src/liteapp/liteapp.cpp @@ -61,6 +61,8 @@ #include #include #include +#include +#include #include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) @@ -124,7 +126,9 @@ QString LiteApp::getResoucePath() QString LiteApp::getStoragePath() { -#if QT_VERSION >= 0x050000 +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + QString root = QStandardPaths::writableLocation(QStandardPaths::AppDataLocation); +#elif QT_VERSION >= 0x050000 QString root = QStandardPaths::writableLocation(QStandardPaths::DataLocation); #else QString root = QDesktopServices::storageLocation(QDesktopServices::DataLocation); @@ -324,7 +328,7 @@ static QImage makeSplashImage(LiteApi::IApplication *app) int bh = r.height()-th; painter.fillRect(1,th,r.width()-2,bh-1,Qt::white); - QFont font("Timer",32); + QFont font = QApplication::font(); font.setPointSize(32); font.setItalic(true); painter.setPen(Qt::white); diff --git a/liteidex/src/liteapp/macsupport.h b/liteidex/src/liteapp/macsupport.h index a8cebf8b0..156b1acbd 100644 --- a/liteidex/src/liteapp/macsupport.h +++ b/liteidex/src/liteapp/macsupport.h @@ -25,7 +25,11 @@ #define MACSUPPORT_H #include +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +#include +#else #include +#endif class MacSupport { @@ -33,7 +37,12 @@ class MacSupport static void setFullScreen(QMainWindow *window); static bool isLionOrHigh() { +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + return QOperatingSystemVersion::current() + >= QOperatingSystemVersion(QOperatingSystemVersion::MacOS, 10, 7); +#else return QSysInfo::MacintoshVersion > QSysInfo::MV_10_6; +#endif } }; diff --git a/liteidex/src/liteapp/newfiledialog.cpp b/liteidex/src/liteapp/newfiledialog.cpp index 943cda3a9..c76758958 100644 --- a/liteidex/src/liteapp/newfiledialog.cpp +++ b/liteidex/src/liteapp/newfiledialog.cpp @@ -58,11 +58,11 @@ NewFileDialog::NewFileDialog(QWidget *parent) : ui->templateTreeView->setModel(m_templateModel); ui->pathTreeView->setModel(m_pathModel); - ui->pathTreeView->setEditTriggers(0); + ui->pathTreeView->setEditTriggers(QAbstractItemView::NoEditTriggers); ui->pathTreeView->setRootIsDecorated(false); ui->pathTreeView->setHeaderHidden(true); - ui->templateTreeView->setEditTriggers(0); + ui->templateTreeView->setEditTriggers(QAbstractItemView::NoEditTriggers); ui->templateTreeView->setRootIsDecorated(false); ui->templateTreeView->setHeaderHidden(true); diff --git a/liteidex/src/liteapp/openeditorswidget.cpp b/liteidex/src/liteapp/openeditorswidget.cpp index 5e1057976..a770f651e 100644 --- a/liteidex/src/liteapp/openeditorswidget.cpp +++ b/liteidex/src/liteapp/openeditorswidget.cpp @@ -74,7 +74,8 @@ void OpenEditorsWidget::handleActivated(const QModelIndex &index) // work around a bug in itemviews where the delegate wouldn't get the QStyle::State_MouseOver QPoint cursorPos = QCursor::pos(); QWidget *vp = viewport(); - QMouseEvent e(QEvent::MouseMove, vp->mapFromGlobal(cursorPos), cursorPos, Qt::NoButton, 0, 0); + QMouseEvent e(QEvent::MouseMove, vp->mapFromGlobal(cursorPos), cursorPos, + Qt::NoButton, Qt::NoButton, Qt::NoModifier); QCoreApplication::sendEvent(vp, &e); } } diff --git a/liteidex/src/liteapp/optionmanager.cpp b/liteidex/src/liteapp/optionmanager.cpp index 2e7d1cba7..e9efee9dd 100644 --- a/liteidex/src/liteapp/optionmanager.cpp +++ b/liteidex/src/liteapp/optionmanager.cpp @@ -25,7 +25,11 @@ #include "optionsbrowser.h" #include #include +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +#include +#else #include +#endif //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) #define _CRTDBG_MAP_ALLOC @@ -81,7 +85,11 @@ void OptionManager::exec(const QString &mimeType) { if (!m_browser) { m_browser = new OptionsBrowser(m_liteApp,m_liteApp->mainWindow()); +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + QRect rc = m_browser->screen()->availableGeometry(); +#else QRect rc = qApp->desktop()->screenGeometry(m_browser); +#endif int width = rc.width(); if (width > 900) { width = 900; diff --git a/liteidex/src/liteapp/optionsbrowser.cpp b/liteidex/src/liteapp/optionsbrowser.cpp index 511e23fc9..32a1e75b4 100644 --- a/liteidex/src/liteapp/optionsbrowser.cpp +++ b/liteidex/src/liteapp/optionsbrowser.cpp @@ -75,7 +75,7 @@ void OptionsBrowser::addOption(LiteApi::IOption *opt) item->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled); QLayout *layout = opt->widget()->layout(); if (layout) { - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); } ui->listWidget->addItem(item); ui->stackedWidget->addWidget(opt->widget()); diff --git a/liteidex/src/liteapp/pluginmanager.cpp b/liteidex/src/liteapp/pluginmanager.cpp index 1a71727ce..30054f938 100644 --- a/liteidex/src/liteapp/pluginmanager.cpp +++ b/liteidex/src/liteapp/pluginmanager.cpp @@ -29,6 +29,7 @@ #include #include #include +#include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) #define _CRTDBG_MAP_ALLOC @@ -88,8 +89,8 @@ void PluginManager::loadPlugins(const QString &dir) i.next(); deps.insertMulti(i.value(),idPlguinMap.value(i.key())); } - QList keys = deps.keys().toSet().toList(); - qSort(keys); + QList keys = deps.uniqueKeys(); + std::sort(keys.begin(), keys.end()); foreach(int index, keys) { foreach(IPluginFactory *p, deps.values(index)) { m_factoryList.append(p); diff --git a/liteidex/src/liteapp/sidewindowstyle.cpp b/liteidex/src/liteapp/sidewindowstyle.cpp index 744738af0..55b618501 100644 --- a/liteidex/src/liteapp/sidewindowstyle.cpp +++ b/liteidex/src/liteapp/sidewindowstyle.cpp @@ -28,6 +28,7 @@ #include "liteapi/liteids.h" #include #include +#include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) @@ -150,7 +151,7 @@ void SideDockWidget::setActions(const QMap &m) m_menu->clear(); // QMapIterator i(m); QList keys = m.keys(); - qSort(keys.begin(),keys.end(),actionThan); + std::sort(keys.begin(), keys.end(), actionThan); for (int i = 0; i < keys.size(); i++) { QAction *act = keys[i]; m_comboBox->addItem(m.value(act)->title,act->objectName()); diff --git a/liteidex/src/liteapp/tooldockwidget.cpp b/liteidex/src/liteapp/tooldockwidget.cpp index 3a4db144d..d95b20f0d 100644 --- a/liteidex/src/liteapp/tooldockwidget.cpp +++ b/liteidex/src/liteapp/tooldockwidget.cpp @@ -49,7 +49,7 @@ BaseDockWidget::BaseDockWidget(QSize iconSize, QWidget *parent) : m_widget = 0; QDockWidget::setWidget(m_mainWidget); m_mainLayout = new QVBoxLayout; - m_mainLayout->setMargin(0); + m_mainLayout->setContentsMargins(0, 0, 0, 0); m_mainLayout->setSpacing(1); m_mainWidget->setLayout(m_mainLayout); @@ -243,11 +243,11 @@ void BaseDockWidget::topLevelChanged(bool b) if (b) { this->setTitleBarWidget(0); m_mainLayout->insertWidget(0,m_toolBar); - m_mainLayout->setMargin(2); + m_mainLayout->setContentsMargins(2, 2, 2, 2); m_toolBar->setVisible(true); flags |= QDockWidget::DockWidgetFloatable; } else { - m_mainLayout->setMargin(0); + m_mainLayout->setContentsMargins(0, 0, 0, 0); m_toolBar->setVisible(false); m_mainLayout->removeWidget(m_toolBar); this->setTitleBarWidget(m_toolBar); diff --git a/liteidex/src/liteideapi.pri b/liteidex/src/liteideapi.pri index 9fcef4246..b87b14965 100644 --- a/liteidex/src/liteideapi.pri +++ b/liteidex/src/liteideapi.pri @@ -16,5 +16,4 @@ contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols INSTALLS += target } -TARGET = $$qtLibraryTarget($$TARGET) - +TARGET = $$qtLibraryName($$TARGET) diff --git a/liteidex/src/liteideplugin.pri b/liteidex/src/liteideplugin.pri index 318ca6c9c..3f8426b58 100644 --- a/liteidex/src/liteideplugin.pri +++ b/liteidex/src/liteideplugin.pri @@ -37,5 +37,4 @@ CONFIG += plugin plugin_with_soname INSTALLS += target } -TARGET = $$qtLibraryTarget($$TARGET) - +TARGET = $$qtLibraryName($$TARGET) diff --git a/liteidex/src/liteideutils.pri b/liteidex/src/liteideutils.pri index 931b5c189..788b9f291 100644 --- a/liteidex/src/liteideutils.pri +++ b/liteidex/src/liteideutils.pri @@ -24,4 +24,4 @@ contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols INSTALLS += target } -TARGET = $$qtLibraryTarget($$TARGET) +TARGET = $$qtLibraryName($$TARGET) diff --git a/liteidex/src/plugins/bookmarks/bookmarkmodel.cpp b/liteidex/src/plugins/bookmarks/bookmarkmodel.cpp index 46809cf8c..2d8502d1b 100644 --- a/liteidex/src/plugins/bookmarks/bookmarkmodel.cpp +++ b/liteidex/src/plugins/bookmarks/bookmarkmodel.cpp @@ -204,7 +204,7 @@ void BookmarkDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti painter->save(); QFontMetrics fm(opt.font); - static int lwidth = fm.width(QLatin1String("8888")) + 18; + static int lwidth = fm.horizontalAdvance(QLatin1String("8888")) + 18; QColor backgroundColor; QColor textColor; @@ -217,8 +217,8 @@ void BookmarkDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti if (!m_selectedPixmap) generateGradientPixmap(lwidth, fm.height()+1, backgroundColor, selected); } else { - painter->setBrush(opt.palette.background().color()); - backgroundColor = opt.palette.background().color(); + painter->setBrush(opt.palette.color(QPalette::Window)); + backgroundColor = opt.palette.color(QPalette::Window); if (!m_normalPixmap) generateGradientPixmap(lwidth, fm.height(), backgroundColor, selected); } @@ -240,13 +240,13 @@ void BookmarkDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti QString topRight = index.data(BookmarkModel::LineNumber).toString(); // Check whether we need to be fancy and paint some background - int fwidth = fm.width(topLeft); + int fwidth = fm.horizontalAdvance(topLeft); if (fwidth + lwidth > opt.rect.width()) { int left = opt.rect.right() - lwidth; painter->drawPixmap(left, opt.rect.top(), selected ? m_selectedPixmap : m_normalPixmap); } // topRight - painter->drawText(opt.rect.right() - fm.width(topRight) - 6 , 2 + opt.rect.top() + fm.ascent(), topRight); + painter->drawText(opt.rect.right() - fm.horizontalAdvance(topRight) - 6 , 2 + opt.rect.top() + fm.ascent(), topRight); // Directory QColor mix; @@ -256,10 +256,10 @@ void BookmarkDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti painter->setPen(mix); QString directory = index.data(BookmarkModel::FilePath).toString(); - int availableSpace = opt.rect.width() - fm.width("888"); - if (fm.width(directory) > availableSpace) { + int availableSpace = opt.rect.width() - fm.horizontalAdvance("888"); + if (fm.horizontalAdvance(directory) > availableSpace) { // We need a shorter directory - availableSpace -= fm.width("..."); + availableSpace -= fm.horizontalAdvance("..."); int pos = directory.size(); int idx; @@ -269,7 +269,7 @@ void BookmarkDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti // Can't happen, this means the string did fit after all? break; } - int width = fm.width(directory.mid(idx, pos-idx)); + int width = fm.horizontalAdvance(directory.mid(idx, pos-idx)); if (width > availableSpace) { directory = "..." + directory.mid(pos); break; diff --git a/liteidex/src/plugins/dlvdebugger/dlvdebugger.cpp b/liteidex/src/plugins/dlvdebugger/dlvdebugger.cpp index e9b4e394b..78eaf2ba4 100644 --- a/liteidex/src/plugins/dlvdebugger/dlvdebugger.cpp +++ b/liteidex/src/plugins/dlvdebugger/dlvdebugger.cpp @@ -33,6 +33,7 @@ #include #include #include +#include #include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) @@ -142,13 +143,13 @@ DlvDebugger::DlvDebugger(LiteApi::IApplication *app, QObject *parent) : connect(app,SIGNAL(loaded()),this,SLOT(appLoaded())); connect(m_process,SIGNAL(started()),this,SIGNAL(debugStarted())); connect(m_process,SIGNAL(finished(int)),this,SLOT(finished(int))); - connect(m_process,SIGNAL(error(QProcess::ProcessError)),this,SLOT(error(QProcess::ProcessError))); + connect(m_process,SIGNAL(errorOccurred(QProcess::ProcessError)),this,SLOT(error(QProcess::ProcessError))); connect(m_process,SIGNAL(readyReadStandardError()),this,SLOT(readStdError())); connect(m_process,SIGNAL(readyReadStandardOutput()),this,SLOT(readStdOutput())); connect(m_headlessProcess,SIGNAL(started()),this,SIGNAL(debugStarted())); connect(m_headlessProcess,SIGNAL(finished(int)),this,SLOT(headlessFinished(int))); - connect(m_headlessProcess,SIGNAL(error(QProcess::ProcessError)),this,SLOT(headlessError(QProcess::ProcessError))); + connect(m_headlessProcess,SIGNAL(errorOccurred(QProcess::ProcessError)),this,SLOT(headlessError(QProcess::ProcessError))); connect(m_headlessProcess,SIGNAL(readyReadStandardError()),this,SLOT(headlessReadStdError())); connect(m_headlessProcess,SIGNAL(readyReadStandardOutput()),this,SLOT(headlessReadStdOutput())); } @@ -665,10 +666,7 @@ void DlvDebugger::initDebug() command_helper("restart",true); } - QMapIterator i(m_initBks); - - while (i.hasNext()) { - i.next(); + for (auto i = m_initBks.cbegin(); i != m_initBks.cend(); ++i) { QString fileName = i.key(); QList lines = m_initBks.values(fileName); foreach(int line, lines) { @@ -716,7 +714,8 @@ static QString valueToolTip(const QString &value) toolTip += text[i]; } else if (text[i] == ',') { toolTip += text[i]; - int pos = text.lastIndexOf(QRegExp("\\{|\\[|\\]|\\}"),i-1); + QRegExp delimiter("\\{|\\[|\\]|\\}"); + int pos = delimiter.lastIndexIn(text, i - 1); if (pos != -1 && text[pos] == '[') { continue; } @@ -861,9 +860,9 @@ void DlvDebugger::readStdOutput() QMap::iterator it = m_varNameMap.find(name); if (it != m_varNameMap.end() && it.value() != value) { #if QT_VERSION >= 0x050000 - valueItem->setData(QColor(Qt::red),Qt::TextColorRole); + valueItem->setData(QColor(Qt::red),Qt::ForegroundRole); #else - valueItem->setData(Qt::red,Qt::TextColorRole); + valueItem->setData(Qt::red,Qt::ForegroundRole); #endif } m_varsModel->appendRow(QList() << nameItem << valueItem); @@ -887,15 +886,15 @@ void DlvDebugger::readStdOutput() find = true; if (m_watchNameMap.value(name) == value) { #if QT_VERSION >= 0x050000 - valueItem->setData(QColor(Qt::black),Qt::TextColorRole); + valueItem->setData(QColor(Qt::black),Qt::ForegroundRole); #else - valueItem->setData(Qt::black,Qt::TextColorRole); + valueItem->setData(Qt::black,Qt::ForegroundRole); #endif } else { #if QT_VERSION >= 0x050000 - valueItem->setData(QColor(Qt::red),Qt::TextColorRole); + valueItem->setData(QColor(Qt::red),Qt::ForegroundRole); #else - valueItem->setData(Qt::red,Qt::TextColorRole); + valueItem->setData(Qt::red,Qt::ForegroundRole); #endif valueItem->setText(value); } diff --git a/liteidex/src/plugins/dlvdebugger/dlvrpcdebugger.cpp b/liteidex/src/plugins/dlvdebugger/dlvrpcdebugger.cpp index 101fc8164..f5971b9de 100644 --- a/liteidex/src/plugins/dlvdebugger/dlvrpcdebugger.cpp +++ b/liteidex/src/plugins/dlvdebugger/dlvrpcdebugger.cpp @@ -34,7 +34,9 @@ #include #include #include +#include #include +#include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) #define _CRTDBG_MAP_ALLOC @@ -175,13 +177,13 @@ DlvRpcDebugger::DlvRpcDebugger(LiteApi::IApplication *app, QObject *parent) : connect(app,SIGNAL(loaded()),this,SLOT(appLoaded())); connect(m_process,SIGNAL(started()),this,SIGNAL(debugStarted())); connect(m_process,SIGNAL(finished(int)),this,SLOT(finished(int))); - connect(m_process,SIGNAL(error(QProcess::ProcessError)),this,SLOT(error(QProcess::ProcessError))); + connect(m_process,SIGNAL(errorOccurred(QProcess::ProcessError)),this,SLOT(error(QProcess::ProcessError))); connect(m_process,SIGNAL(readyReadStandardError()),this,SLOT(readStdError())); connect(m_process,SIGNAL(readyReadStandardOutput()),this,SLOT(readStdOutput())); connect(m_headlessProcess,SIGNAL(started()),this,SIGNAL(debugStarted())); connect(m_headlessProcess,SIGNAL(finished(int)),this,SLOT(headlessFinished(int))); - connect(m_headlessProcess,SIGNAL(error(QProcess::ProcessError)),this,SLOT(headlessError(QProcess::ProcessError))); + connect(m_headlessProcess,SIGNAL(errorOccurred(QProcess::ProcessError)),this,SLOT(headlessError(QProcess::ProcessError))); connect(m_headlessProcess,SIGNAL(readyReadStandardError()),this,SLOT(headlessReadStdError())); connect(m_headlessProcess,SIGNAL(readyReadStandardOutput()),this,SLOT(headlessReadStdOutput())); } @@ -684,10 +686,7 @@ void DlvRpcDebugger::initDebug() //get thread id m_processId.clear(); - QMapIterator i(m_initBks); - - while (i.hasNext()) { - i.next(); + for (auto i = m_initBks.cbegin(); i != m_initBks.cend(); ++i) { QString fileName = i.key(); QList lines = m_initBks.values(fileName); foreach(int line, lines) { @@ -735,7 +734,8 @@ static QString valueToolTip(const QString &value) toolTip += text[i]; } else if (text[i] == ',') { toolTip += text[i]; - int pos = text.lastIndexOf(QRegExp("\\{|\\[|\\]|\\}"),i-1); + QRegExp delimiter("\\{|\\[|\\]|\\}"); + int pos = delimiter.lastIndexIn(text, i - 1); if (pos != -1 && text[pos] == '[') { continue; } @@ -885,9 +885,9 @@ void DlvRpcDebugger::readStdOutput() QMap::iterator it = m_checkVarsMap.find(name); if (it != m_checkVarsMap.end() && it.value() != value) { #if QT_VERSION >= 0x050000 - valueItem->setData(QColor(Qt::red),Qt::TextColorRole); + valueItem->setData(QColor(Qt::red),Qt::ForegroundRole); #else - valueItem->setData(Qt::red,Qt::TextColorRole); + valueItem->setData(Qt::red,Qt::ForegroundRole); #endif } m_varsModel->appendRow(QList() << nameItem << valueItem); @@ -911,15 +911,15 @@ void DlvRpcDebugger::readStdOutput() find = true; if (m_watchNameMap.value(name) == value) { #if QT_VERSION >= 0x050000 - valueItem->setData(QColor(Qt::black),Qt::TextColorRole); + valueItem->setData(QColor(Qt::black),Qt::ForegroundRole); #else - valueItem->setData(Qt::black,Qt::TextColorRole); + valueItem->setData(Qt::black,Qt::ForegroundRole); #endif } else { #if QT_VERSION >= 0x050000 - valueItem->setData(QColor(Qt::red),Qt::TextColorRole); + valueItem->setData(QColor(Qt::red),Qt::ForegroundRole); #else - valueItem->setData(Qt::red,Qt::TextColorRole); + valueItem->setData(Qt::red,Qt::ForegroundRole); #endif valueItem->setText(value); } @@ -1001,9 +1001,9 @@ void DlvRpcDebugger::updateWatch(int id) item->setData(name,VarNameRole); QStandardItem *type = new QStandardItem("not find"); #if QT_VERSION >= 0x050000 - type->setData(QColor(Qt::red),Qt::TextColorRole); + type->setData(QColor(Qt::red),Qt::ForegroundRole); #else - type->setData(Qt::red,Qt::TextColorRole); + type->setData(Qt::red,Qt::ForegroundRole); #endif m_watchModel->appendRow(QList() << item << type); } @@ -1061,7 +1061,7 @@ static bool threadIdThan(const Thread &s1, const Thread &s2) void DlvRpcDebugger::updateThreads(const QList &threads) { QList ths = threads; - qSort(ths.begin(),ths.end(),threadIdThan); + std::sort(ths.begin(), ths.end(), threadIdThan); emit beginUpdateModel(LiteApi::THREADS_MODEL); m_threadsModel->removeRows(0,m_threadsModel->rowCount()); foreach (Thread t, ths) { @@ -1193,9 +1193,9 @@ void DlvRpcDebugger::updateRegisters(int threadid, bool includeFp) QMap::const_iterator it = m_checkRegsMap.find(r.Name); if (it != m_checkRegsMap.end() && it.value() != r.Value) { #if QT_VERSION >= 0x050000 - valueItem->setData(QColor(Qt::red),Qt::TextColorRole); + valueItem->setData(QColor(Qt::red),Qt::ForegroundRole); #else - valueItem->setData(Qt::red,Qt::TextColorRole); + valueItem->setData(Qt::red,Qt::ForegroundRole); #endif } saveMap.insert(r.Name,r.Value); @@ -1271,9 +1271,9 @@ void DlvRpcDebugger::updateVariableHelper(const QList &vars, QStandard QMap::const_iterator it = checkMap.find(checkName); if (it != checkMap.end() && it.value() != var.Value) { #if QT_VERSION >= 0x050000 - valueItem->setData(QColor(Qt::red),Qt::TextColorRole); + valueItem->setData(QColor(Qt::red),Qt::ForegroundRole); #else - valueItem->setData(Qt::red,Qt::TextColorRole); + valueItem->setData(Qt::red,Qt::ForegroundRole); #endif } saveMap.insert(checkName,var.Value); diff --git a/liteidex/src/plugins/filebrowser/filebrowser.cpp b/liteidex/src/plugins/filebrowser/filebrowser.cpp index 15ce95afe..848a1f9a8 100644 --- a/liteidex/src/plugins/filebrowser/filebrowser.cpp +++ b/liteidex/src/plugins/filebrowser/filebrowser.cpp @@ -66,7 +66,7 @@ FileBrowser::FileBrowser(LiteApi::IApplication *app, QObject *parent) : { m_widget = new QWidget; QVBoxLayout *mainLayout = new QVBoxLayout; - mainLayout->setMargin(0); + mainLayout->setContentsMargins(0, 0, 0, 0); mainLayout->setSpacing(0); QDir::Filters filters = QDir::AllDirs | QDir::Files | QDir::Drives @@ -142,7 +142,7 @@ FileBrowser::FileBrowser(LiteApi::IApplication *app, QObject *parent) : m_rootCombo = new QComboBox; m_rootCombo->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Preferred); - m_rootCombo->setSizeAdjustPolicy(QComboBox::AdjustToMinimumContentsLength); + m_rootCombo->setSizeAdjustPolicy(QComboBox::AdjustToMinimumContentsLengthWithIcon); m_rootCombo->setEditable(false); m_rootToolBar->addAction(m_cdupAct); @@ -175,7 +175,7 @@ FileBrowser::FileBrowser(LiteApi::IApplication *app, QObject *parent) : m_toolWindowAct = m_liteApp->toolWindowManager()->addToolWindow(Qt::LeftDockWidgetArea,m_widget,"FileSystem",tr("File System"),true,actions); connect(m_toolWindowAct,SIGNAL(toggled(bool)),this,SLOT(visibilityChanged(bool))); //connect(m_filterCombo,SIGNAL(activated(QString)),this,SLOT(activatedFilter(QString))); - connect(m_rootCombo,SIGNAL(activated(QString)),this,SLOT(activatedRoot(QString))); + connect(m_rootCombo,SIGNAL(textActivated(QString)),this,SLOT(activatedRoot(QString))); connect(m_syncAct,SIGNAL(triggered(bool)),this,SLOT(syncFileModel(bool))); connect(m_reloadAct,SIGNAL(triggered()),this,SLOT(reloadFileModel())); connect(m_liteApp->editorManager(),SIGNAL(currentEditorChanged(LiteApi::IEditor*)),this,SLOT(currentEditorChanged(LiteApi::IEditor*))); diff --git a/liteidex/src/plugins/gdbdebugger/gdbdebugger.cpp b/liteidex/src/plugins/gdbdebugger/gdbdebugger.cpp index 0e8aaa07c..325cffd62 100644 --- a/liteidex/src/plugins/gdbdebugger/gdbdebugger.cpp +++ b/liteidex/src/plugins/gdbdebugger/gdbdebugger.cpp @@ -127,7 +127,7 @@ GdbDebugger::GdbDebugger(LiteApi::IApplication *app, QObject *parent) : connect(app,SIGNAL(loaded()),this,SLOT(appLoaded())); connect(m_process,SIGNAL(started()),this,SIGNAL(debugStarted())); connect(m_process,SIGNAL(finished(int)),this,SLOT(finished(int))); - connect(m_process,SIGNAL(error(QProcess::ProcessError)),this,SLOT(error(QProcess::ProcessError))); + connect(m_process,SIGNAL(errorOccurred(QProcess::ProcessError)),this,SLOT(error(QProcess::ProcessError))); connect(m_process,SIGNAL(readyReadStandardError()),this,SLOT(readStdError())); connect(m_process,SIGNAL(readyReadStandardOutput()),this,SLOT(readStdOutput())); } diff --git a/liteidex/src/plugins/golangast/astwidget.cpp b/liteidex/src/plugins/golangast/astwidget.cpp index a0fc78909..ee6125eff 100644 --- a/liteidex/src/plugins/golangast/astwidget.cpp +++ b/liteidex/src/plugins/golangast/astwidget.cpp @@ -52,7 +52,7 @@ AstWidget::AstWidget(bool outline, LiteApi::IApplication *app, QWidget *parent) { m_bFirst = true; QVBoxLayout *layout = new QVBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->setSpacing(0); m_tree = new SymbolTreeView; diff --git a/liteidex/src/plugins/golangcode/golangcode.cpp b/liteidex/src/plugins/golangcode/golangcode.cpp index b72bdfd03..85e0b1c6d 100644 --- a/liteidex/src/plugins/golangcode/golangcode.cpp +++ b/liteidex/src/plugins/golangcode/golangcode.cpp @@ -30,12 +30,17 @@ #include #include #include +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +#include +#else #include +#endif #include #include #include #include #include +#include #include //#define GOCODE_CHECKGOPATH @@ -823,7 +828,7 @@ ImportPkgTip::ImportPkgTip(LiteApi::IApplication *app, QObject *parent) m_infoLabel = new QLabel; m_pkgLabel = new QLabel; QHBoxLayout *layout = new QHBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->addWidget(m_infoLabel); layout->addWidget(m_pkgLabel); m_popup->setLayout(layout); @@ -838,11 +843,15 @@ ImportPkgTip::~ImportPkgTip() void ImportPkgTip::showPkgHint(int startpos, const QStringList &pkg, QPlainTextEdit *ed) { +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + const QRect screen = ed->screen()->availableGeometry(); +#else const QDesktopWidget *desktop = QApplication::desktop(); #ifdef Q_WS_MAC const QRect screen = desktop->availableGeometry(desktop->screenNumber(ed)); #else const QRect screen = desktop->screenGeometry(desktop->screenNumber(ed)); +#endif #endif m_pkg = pkg; m_startPos = startpos; diff --git a/liteidex/src/plugins/golangdoc/findapiwidget.cpp b/liteidex/src/plugins/golangdoc/findapiwidget.cpp index 151f1cb4f..c1736c6f1 100644 --- a/liteidex/src/plugins/golangdoc/findapiwidget.cpp +++ b/liteidex/src/plugins/golangdoc/findapiwidget.cpp @@ -35,6 +35,7 @@ #include #include #include +#include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) #define _CRTDBG_MAP_ALLOC @@ -305,13 +306,13 @@ FindApiWidget::FindApiWidget(LiteApi::IApplication *app, QWidget *parent) : findBtn->setText(tr("Find")); QHBoxLayout *findLayout = new QHBoxLayout; - findLayout->setMargin(2); + findLayout->setContentsMargins(2, 2, 2, 2); findLayout->addWidget(m_findEdit); findLayout->addWidget(findBtn); findLayout->addWidget(m_chaseWidget); QVBoxLayout *mainLayout = new QVBoxLayout; - mainLayout->setMargin(1); + mainLayout->setContentsMargins(1, 1, 1, 1); mainLayout->setSpacing(1); mainLayout->addLayout(findLayout); mainLayout->addWidget(m_apiView); diff --git a/liteidex/src/plugins/golangdoc/finddocwidget.cpp b/liteidex/src/plugins/golangdoc/finddocwidget.cpp index 4fab5262e..ed281daed 100644 --- a/liteidex/src/plugins/golangdoc/finddocwidget.cpp +++ b/liteidex/src/plugins/golangdoc/finddocwidget.cpp @@ -33,6 +33,7 @@ #include #include #include +#include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) #define _CRTDBG_MAP_ALLOC @@ -104,7 +105,7 @@ FindDocWidget::FindDocWidget(LiteApi::IApplication *app, QWidget *parent) : findBtn->setText(tr("Find")); QHBoxLayout *findLayout = new QHBoxLayout; - findLayout->setMargin(2); + findLayout->setContentsMargins(2, 2, 2, 2); findLayout->addWidget(m_findEdit); findLayout->addWidget(findBtn); findLayout->addWidget(m_chaseWidget); @@ -115,7 +116,7 @@ FindDocWidget::FindDocWidget(LiteApi::IApplication *app, QWidget *parent) : m_browser->setSearchPaths(paths); QVBoxLayout *mainLayout = new QVBoxLayout; - mainLayout->setMargin(1); + mainLayout->setContentsMargins(1, 1, 1, 1); mainLayout->setSpacing(1); mainLayout->addLayout(findLayout); mainLayout->addWidget(m_browser->widget()); diff --git a/liteidex/src/plugins/golangdoc/golangdoc.cpp b/liteidex/src/plugins/golangdoc/golangdoc.cpp index ff6562cae..796965a77 100644 --- a/liteidex/src/plugins/golangdoc/golangdoc.cpp +++ b/liteidex/src/plugins/golangdoc/golangdoc.cpp @@ -121,7 +121,7 @@ GolangDoc::GolangDoc(LiteApi::IApplication *app, QObject *parent) : connect(m_docBrowser,SIGNAL(linkHovered(QUrl)),this,SLOT(highlighted(QUrl))); connect(m_docBrowser,SIGNAL(documentLoaded()),this,SLOT(documentLoaded())); connect(m_docBrowser,SIGNAL(anchorChanged(QString)),this,SLOT(anchorChanged(QString))); - connect(m_godocFindComboBox,SIGNAL(activated(QString)),this,SLOT(godocFindPackage(QString))); + connect(m_godocFindComboBox,SIGNAL(textActivated(QString)),this,SLOT(godocFindPackage(QString))); connect(m_godocProcess,SIGNAL(extOutput(QByteArray,bool)),this,SLOT(godocOutput(QByteArray,bool))); connect(m_godocProcess,SIGNAL(extFinish(bool,int,QString)),this,SLOT(godocFinish(bool,int,QString))); connect(m_findProcess,SIGNAL(extOutput(QByteArray,bool)),this,SLOT(findOutput(QByteArray,bool))); diff --git a/liteidex/src/plugins/golangedit/golangedit.cpp b/liteidex/src/plugins/golangedit/golangedit.cpp index 896cfcf9d..460f29afd 100644 --- a/liteidex/src/plugins/golangedit/golangedit.cpp +++ b/liteidex/src/plugins/golangedit/golangedit.cpp @@ -32,6 +32,7 @@ #include "goaddtagsdialog.h" #include "goremovetagsdialog.h" #include "quickopenapi/quickopenapi.h" +#include "liteapi/liteqt.h" #include #include @@ -82,11 +83,11 @@ static QString getGocode(LiteApi::IApplication *app) #endif } -GolangEdit::GolangEdit(LiteApi::IApplication *app, QObject *parent) : - QObject(parent), m_liteApp(app), m_gorootSourceReadOnly(false), m_useGoModule(false) -{ - m_sourceQueryOutput = 0; - LiteApi::IActionContext *actionContext = m_liteApp->actionManager()->getActionContext(this,"GolangEdit"); +GolangEdit::GolangEdit(LiteApi::IApplication *app, QObject *parent) : + QObject(parent), m_liteApp(app), m_gorootSourceReadOnly(false), m_useGoModule(false) +{ + m_sourceQueryOutput = 0; + LiteApi::IActionContext *actionContext = m_liteApp->actionManager()->getActionContext(this,"GolangEdit"); m_viewGodocAct = new QAction(tr("View import package use godoc"),this); actionContext->regAction(m_viewGodocAct,"ViewGodoc",""); @@ -120,9 +121,9 @@ GolangEdit::GolangEdit(LiteApi::IApplication *app, QObject *parent) : m_fileSearch = new GolangFileSearch(app,m_liteApp); - LiteApi::IFileSearchManager *manager = LiteApi::getFileSearchManager(app); - if (manager) { - manager->addFileSearch(m_fileSearch); + LiteApi::IFileSearchManager *manager = LiteApi::getFileSearchManager(app); + if (manager) { + manager->addFileSearch(m_fileSearch); } m_envManager = LiteApi::getEnvManager(m_liteApp); if (m_envManager) { @@ -132,9 +133,9 @@ GolangEdit::GolangEdit(LiteApi::IApplication *app, QObject *parent) : m_findDefProcess = new Process(this); m_findInfoProcess = new Process(this); m_findLinkProcess = new Process(this); -#if 0 // Source Query is superseded by gopls. - m_sourceQueryProcess = new Process(this); -#endif +#if 0 // Source Query is superseded by gopls. + m_sourceQueryProcess = new Process(this); +#endif m_enableMouseUnderInfo = true; m_enableMouseNavigation = true; m_useGocodeInfo = true; @@ -168,13 +169,13 @@ GolangEdit::GolangEdit(LiteApi::IApplication *app, QObject *parent) : connect(m_fileSearch,SIGNAL(searchTextChanged(QString)),this,SLOT(searchTextChanged(QString))); } - connect(m_liteApp->optionManager(),SIGNAL(applyOption(QString)),this,SLOT(applyOption(QString))); - -#if 0 // Source Query is superseded by gopls. - connect(m_sourceQueryProcess,SIGNAL(finished(int,QProcess::ExitStatus)),this,SLOT(sourceQueryFinished(int,QProcess::ExitStatus))); - connect(m_sourceQueryProcess,SIGNAL(error(QProcess::ProcessError)),this,SLOT(sourcequeryError(QProcess::ProcessError))); - - m_sourceQueryOutput = new TextOutput(m_liteApp,true); + connect(m_liteApp->optionManager(),SIGNAL(applyOption(QString)),this,SLOT(applyOption(QString))); + +#if 0 // Source Query is superseded by gopls. + connect(m_sourceQueryProcess,SIGNAL(finished(int,QProcess::ExitStatus)),this,SLOT(sourceQueryFinished(int,QProcess::ExitStatus))); + connect(m_sourceQueryProcess,SIGNAL(errorOccurred(QProcess::ProcessError)),this,SLOT(sourcequeryError(QProcess::ProcessError))); + + m_sourceQueryOutput = new TextOutput(m_liteApp,true); m_sourceQueryOutput->setLineWrap(false); m_stopSourceQueryAct = new QAction(tr("Stop"),this); @@ -236,9 +237,9 @@ GolangEdit::GolangEdit(LiteApi::IApplication *app, QObject *parent) : connect(m_sourcePointstoAct,SIGNAL(triggered()),this,SLOT(sourcePointsto())); m_sourceWhicherrs = new QAction(tr("Whicherrs"),this); - actionContext->regAction(m_sourceWhicherrs,"SourceQueryWhicherrs",""); - connect(m_sourceWhicherrs,SIGNAL(triggered()),this,SLOT(sourceWhicherrs())); -#endif + actionContext->regAction(m_sourceWhicherrs,"SourceQueryWhicherrs",""); + connect(m_sourceWhicherrs,SIGNAL(triggered()),this,SLOT(sourceWhicherrs())); +#endif m_goAddTagsAct = new QAction(tr("Add Tags To Struct Field"),this); actionContext->regAction(m_goAddTagsAct,"GoAddTags",""); @@ -397,10 +398,10 @@ void GolangEdit::editorCreated(LiteApi::IEditor *editor) sub->addAction(m_renameAllSymbolSkipGorootAct); sub->addAction(m_renameAllSymbolWithGorootAct); -#if 0 // Source Query is superseded by gopls. - menu->addSeparator(); - menu->addAction(m_sourceWhatAct); - sub = menu->addMenu(tr("SourceQuery")); +#if 0 // Source Query is superseded by gopls. + menu->addSeparator(); + menu->addAction(m_sourceWhatAct); + sub = menu->addMenu(tr("SourceQuery")); sub->addAction(m_sourceCalleesAct); sub->addAction(m_sourceCallersAct); sub->addAction(m_sourceCallstackAct); @@ -411,9 +412,9 @@ void GolangEdit::editorCreated(LiteApi::IEditor *editor) sub->addAction(m_sourceImplementsGopathAct); sub->addAction(m_sourcePeersAct); sub->addAction(m_sourcePointstoAct); - sub->addAction(m_sourceReferrersAct); - sub->addAction(m_sourceWhicherrs); -#endif + sub->addAction(m_sourceReferrersAct); + sub->addAction(m_sourceWhicherrs); +#endif menu->addSeparator(); menu->addAction(m_goAddTagsAct); @@ -437,10 +438,10 @@ void GolangEdit::editorCreated(LiteApi::IEditor *editor) sub->addAction(m_renameAllSymbolWithGorootAct); connect(menu,SIGNAL(aboutToShow()),this,SLOT(aboutToShowContextMenu())); -#if 0 // Source Query is superseded by gopls. - menu->addSeparator(); - menu->addAction(m_sourceWhatAct); - sub = menu->addMenu(tr("SourceQuery")); +#if 0 // Source Query is superseded by gopls. + menu->addSeparator(); + menu->addAction(m_sourceWhatAct); + sub = menu->addMenu(tr("SourceQuery")); sub->addAction(m_sourceCalleesAct); sub->addAction(m_sourceCallersAct); sub->addAction(m_sourceCallstackAct); @@ -451,9 +452,9 @@ void GolangEdit::editorCreated(LiteApi::IEditor *editor) sub->addAction(m_sourceImplementsGopathAct); sub->addAction(m_sourcePeersAct); sub->addAction(m_sourcePointstoAct); - sub->addAction(m_sourceReferrersAct); - sub->addAction(m_sourceWhicherrs); -#endif + sub->addAction(m_sourceReferrersAct); + sub->addAction(m_sourceWhicherrs); +#endif menu->addSeparator(); menu->addAction(m_goAddTagsAct); @@ -948,7 +949,7 @@ static QStringList FindSourceInfo(LiteApi::IApplication *app, const QString &fil QFile f(fileName); if (f.open(QFile::ReadOnly)) { QTextStream stream(&f); - stream.setCodec("utf-8"); + qtSetUtf8Encoding(stream); int curLine = 0; QString text; while(!stream.atEnd() && (curLine < (line+maxLine)) ) { @@ -978,7 +979,7 @@ static QString FindSourceBlock(LiteApi::IApplication *app, const QString &fileNa QFile f(fileName); if (f.open(QFile::ReadOnly)) { QTextStream stream(&f); - stream.setCodec("utf-8"); + qtSetUtf8Encoding(stream); int curLine = 0; QString text; while(!stream.atEnd()) { diff --git a/liteidex/src/plugins/golangedit/golangfilesearch.cpp b/liteidex/src/plugins/golangedit/golangfilesearch.cpp index e92077879..9478a1717 100644 --- a/liteidex/src/plugins/golangedit/golangfilesearch.cpp +++ b/liteidex/src/plugins/golangedit/golangfilesearch.cpp @@ -24,6 +24,7 @@ #include "golangfilesearch.h" #include "litebuildapi/litebuildapi.h" #include +#include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) #define _CRTDBG_MAP_ALLOC diff --git a/liteidex/src/plugins/golangedit/golanghighlighter.cpp b/liteidex/src/plugins/golangedit/golanghighlighter.cpp index 8ea6c6bf7..383e3f0de 100644 --- a/liteidex/src/plugins/golangedit/golanghighlighter.cpp +++ b/liteidex/src/plugins/golangedit/golanghighlighter.cpp @@ -29,6 +29,7 @@ #include "cplusplus/Lexer.h" #include +#include #include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) diff --git a/liteidex/src/plugins/golangfmt/golangfmt.cpp b/liteidex/src/plugins/golangfmt/golangfmt.cpp index e6682bc2d..f2156b75a 100644 --- a/liteidex/src/plugins/golangfmt/golangfmt.cpp +++ b/liteidex/src/plugins/golangfmt/golangfmt.cpp @@ -37,6 +37,7 @@ #include #include #include +#include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) #define _CRTDBG_MAP_ALLOC diff --git a/liteidex/src/plugins/golangpackage/gotool.cpp b/liteidex/src/plugins/golangpackage/gotool.cpp index ccf94b807..8c012e7fd 100644 --- a/liteidex/src/plugins/golangpackage/gotool.cpp +++ b/liteidex/src/plugins/golangpackage/gotool.cpp @@ -45,7 +45,7 @@ GoTool::GoTool(LiteApi::IApplication *app, QObject *parent) : m_process = new Process(this); connect(m_process,SIGNAL(readyReadStandardError()),this,SLOT(readError())); connect(m_process,SIGNAL(readyReadStandardOutput()),this,SLOT(readOutput())); - connect(m_process,SIGNAL(error(QProcess::ProcessError)),this,SIGNAL(error(QProcess::ProcessError))); + connect(m_process,SIGNAL(errorOccurred(QProcess::ProcessError)),this,SIGNAL(error(QProcess::ProcessError))); connect(m_process,SIGNAL(finished(int,QProcess::ExitStatus)),this,SIGNAL(finished(int,QProcess::ExitStatus))); } diff --git a/liteidex/src/plugins/golangpackage/packagebrowser.cpp b/liteidex/src/plugins/golangpackage/packagebrowser.cpp index 9ed8dab3d..4c10ed5af 100644 --- a/liteidex/src/plugins/golangpackage/packagebrowser.cpp +++ b/liteidex/src/plugins/golangpackage/packagebrowser.cpp @@ -66,7 +66,7 @@ PackageBrowser::PackageBrowser(LiteApi::IApplication *app, QObject *parent) : m_hideStandard = false; QVBoxLayout *layout = new QVBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); m_model = new QStandardItemModel(this); diff --git a/liteidex/src/plugins/golangpackage/packageproject.cpp b/liteidex/src/plugins/golangpackage/packageproject.cpp index 034e1fe3f..8c169f379 100644 --- a/liteidex/src/plugins/golangpackage/packageproject.cpp +++ b/liteidex/src/plugins/golangpackage/packageproject.cpp @@ -63,7 +63,7 @@ PackageProject::PackageProject(LiteApi::IApplication *app) : m_reloadTimer->setSingleShot(true); QVBoxLayout *layout = new QVBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); m_treeView = new PackageTree(m_widget); m_treeView->setEditTriggers(QTreeView::NoEditTriggers); m_treeView->setHeaderHidden(true); diff --git a/liteidex/src/plugins/golangtool/gopathbrowser.cpp b/liteidex/src/plugins/golangtool/gopathbrowser.cpp index 90064f58f..b07389b1e 100644 --- a/liteidex/src/plugins/golangtool/gopathbrowser.cpp +++ b/liteidex/src/plugins/golangtool/gopathbrowser.cpp @@ -78,7 +78,7 @@ GopathBrowser::GopathBrowser(LiteApi::IApplication *app, QObject *parent) : m_pathTree->setModel(m_model); QVBoxLayout *layout = new QVBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->addWidget(m_toolBar); layout->addWidget(m_pathTree); m_widget->setLayout(layout); diff --git a/liteidex/src/plugins/gopls/goplssearchresults.cpp b/liteidex/src/plugins/gopls/goplssearchresults.cpp index f2249bcb0..cc7610570 100644 --- a/liteidex/src/plugins/gopls/goplssearchresults.cpp +++ b/liteidex/src/plugins/gopls/goplssearchresults.cpp @@ -1,4 +1,5 @@ #include "goplssearchresults.h" +#include "liteapi/liteqt.h" #include #include @@ -54,7 +55,7 @@ void GoplsSearchResults::showLocations(const QString &title, const QString &sear QFile file(fileName); if (file.open(QFile::ReadOnly|QFile::Text)) { QTextStream stream(&file); - stream.setCodec("UTF-8"); + qtSetUtf8Encoding(stream); for (int line = 0; !stream.atEnd(); ++line) { QString text = stream.readLine(); if (line == lineNumber) { diff --git a/liteidex/src/plugins/imageeditor/imageeditor.cpp b/liteidex/src/plugins/imageeditor/imageeditor.cpp index bcb496552..15b64ba48 100644 --- a/liteidex/src/plugins/imageeditor/imageeditor.cpp +++ b/liteidex/src/plugins/imageeditor/imageeditor.cpp @@ -121,7 +121,7 @@ ImageEditor::ImageEditor(LiteApi::IApplication *app) m_mvToolBar->addSeparator(); QHBoxLayout *toolLayout = new QHBoxLayout; - toolLayout->setMargin(0); + toolLayout->setContentsMargins(0, 0, 0, 0); toolLayout->setSpacing(0); toolLayout->addWidget(m_toolBar); toolLayout->addWidget(m_mvToolBar); @@ -129,7 +129,7 @@ ImageEditor::ImageEditor(LiteApi::IApplication *app) toolLayout->addSpacing(0); QVBoxLayout *layout = new QVBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->setSpacing(0); layout->addLayout(toolLayout); layout->addWidget(m_imageWidget); diff --git a/liteidex/src/plugins/imageeditor/imageeditor.pro b/liteidex/src/plugins/imageeditor/imageeditor.pro index 478fdefe2..0fca6ffe1 100644 --- a/liteidex/src/plugins/imageeditor/imageeditor.pro +++ b/liteidex/src/plugins/imageeditor/imageeditor.pro @@ -25,6 +25,8 @@ HEADERS +=\ RESOURCES += \ imageeditor.qrc -!isEmpty(QT.svg.name): QT += svg +!isEmpty(QT.svg.name) { + QT += svg + greaterThan(QT_MAJOR_VERSION, 5): QT += svgwidgets +} else: DEFINES += QT_NO_SVG - diff --git a/liteidex/src/plugins/imageeditor/imageeditorwidget.cpp b/liteidex/src/plugins/imageeditor/imageeditorwidget.cpp index 204717c96..67490d0cf 100644 --- a/liteidex/src/plugins/imageeditor/imageeditorwidget.cpp +++ b/liteidex/src/plugins/imageeditor/imageeditorwidget.cpp @@ -121,22 +121,28 @@ void ImageEditorWidget::doScale(qreal factor) void ImageEditorWidget::wheelEvent(QWheelEvent *event) { +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + const QPoint angleDelta = event->angleDelta(); + const bool horizontal = qAbs(angleDelta.x()) > qAbs(angleDelta.y()); + int delta = horizontal ? angleDelta.x() : angleDelta.y(); +#else + int delta = event->delta(); + const bool horizontal = event->orientation() == Qt::Horizontal; +#endif if (event->modifiers() & Qt::ControlModifier) { - const int delta = event->delta(); if (delta < 0) zoomOut(); else if (delta > 0) zoomIn(); return; } - if (event->delta() != 0) { - int delta = event->delta(); + if (delta != 0) { #if QT_VERSION >= 0x050700 if (event->inverted()) { - delta = -event->delta(); + delta = -delta; } #endif - if (event->orientation() == Qt::Horizontal) { + if (horizontal) { this->horizontalScrollBar()->setValue(this->horizontalScrollBar()->value()-delta); } else { this->verticalScrollBar()->setValue(this->verticalScrollBar()->value()-delta); @@ -211,4 +217,3 @@ qreal ImageEditorWidget::scaleFactor() const { return transform().m11(); } - diff --git a/liteidex/src/plugins/litebuild/litebuild.cpp b/liteidex/src/plugins/litebuild/litebuild.cpp index 2da1f0340..78d8c0382 100644 --- a/liteidex/src/plugins/litebuild/litebuild.cpp +++ b/liteidex/src/plugins/litebuild/litebuild.cpp @@ -51,6 +51,7 @@ #include #include #include +#include #include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) diff --git a/liteidex/src/plugins/litebuild/litebuildoption.cpp b/liteidex/src/plugins/litebuild/litebuildoption.cpp index 0d5038881..8bf616e5f 100644 --- a/liteidex/src/plugins/litebuild/litebuildoption.cpp +++ b/liteidex/src/plugins/litebuild/litebuildoption.cpp @@ -47,7 +47,7 @@ LiteBuildOption::LiteBuildOption(LiteApi::IApplication *app,QObject *parent) : m_fileModel = new QFileSystemModel(this); QString path = m_liteApp->resourcePath()+"/litebuild"; QModelIndex root = m_fileModel->setRootPath(path); - ui->fileTreeView->setEditTriggers(0); + ui->fileTreeView->setEditTriggers(QAbstractItemView::NoEditTriggers); ui->fileTreeView->setModel(m_fileModel); ui->fileTreeView->setRootIndex(root); #if QT_VERSION >= 0x050000 diff --git a/liteidex/src/plugins/litebuild/litebuildplugin.cpp b/liteidex/src/plugins/litebuild/litebuildplugin.cpp index e317a5f51..8b965ced0 100644 --- a/liteidex/src/plugins/litebuild/litebuildplugin.cpp +++ b/liteidex/src/plugins/litebuild/litebuildplugin.cpp @@ -79,7 +79,7 @@ bool LiteBuildPlugin::load(LiteApi::IApplication *app) m_executeWidget = new QWidget; m_executeWidget->hide(); QHBoxLayout *hbox = new QHBoxLayout; - hbox->setMargin(1); + hbox->setContentsMargins(1, 1, 1, 1); m_executeWidget->setLayout(hbox); m_commandCombo = new QComboBox; m_commandCombo->setEditable(true); diff --git a/liteidex/src/plugins/litedebug/debugwidget.cpp b/liteidex/src/plugins/litedebug/debugwidget.cpp index d1c758bb5..464e16393 100644 --- a/liteidex/src/plugins/litedebug/debugwidget.cpp +++ b/liteidex/src/plugins/litedebug/debugwidget.cpp @@ -85,14 +85,14 @@ DebugWidget::DebugWidget(LiteApi::IApplication *app, QObject *parent) : m_regsView = new QTreeView; m_asmView = new QTreeView; - m_asyncView->setEditTriggers(0); - m_varsView->setEditTriggers(0); + m_asyncView->setEditTriggers(QAbstractItemView::NoEditTriggers); + m_varsView->setEditTriggers(QAbstractItemView::NoEditTriggers); m_varsView->setContextMenuPolicy(Qt::CustomContextMenu); - m_watchView->setEditTriggers(0); + m_watchView->setEditTriggers(QAbstractItemView::NoEditTriggers); m_watchView->setContextMenuPolicy(Qt::CustomContextMenu); - m_framesView->setEditTriggers(0); + m_framesView->setEditTriggers(QAbstractItemView::NoEditTriggers); #if QT_VERSION >= 0x050000 m_framesView->header()->setSectionResizeMode(QHeaderView::ResizeToContents); m_threadsView->header()->setSectionResizeMode(QHeaderView::ResizeToContents); @@ -105,11 +105,11 @@ DebugWidget::DebugWidget(LiteApi::IApplication *app, QObject *parent) : m_asmView->header()->setResizeMode(QHeaderView::ResizeToContents); #endif - m_libraryView->setEditTriggers(0); - m_threadsView->setEditTriggers(0); - m_goroutinesView->setEditTriggers(0); - m_regsView->setEditTriggers(0); - m_asmView->setEditTriggers(0); + m_libraryView->setEditTriggers(QAbstractItemView::NoEditTriggers); + m_threadsView->setEditTriggers(QAbstractItemView::NoEditTriggers); + m_goroutinesView->setEditTriggers(QAbstractItemView::NoEditTriggers); + m_regsView->setEditTriggers(QAbstractItemView::NoEditTriggers); + m_asmView->setEditTriggers(QAbstractItemView::NoEditTriggers); m_watchView->setEditTriggers(QAbstractItemView::DoubleClicked); m_watchView->setItemDelegate(new WatchDelegate(this)); @@ -122,7 +122,7 @@ DebugWidget::DebugWidget(LiteApi::IApplication *app, QObject *parent) : QVBoxLayout *layout = new QVBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->addWidget(m_tabWidget); m_widget->setLayout(layout); diff --git a/liteidex/src/plugins/litedebug/litedebug.cpp b/liteidex/src/plugins/litedebug/litedebug.cpp index ddca2b708..373335d1f 100644 --- a/liteidex/src/plugins/litedebug/litedebug.cpp +++ b/liteidex/src/plugins/litedebug/litedebug.cpp @@ -35,6 +35,7 @@ #include #include #include +#include #include #include #include @@ -79,11 +80,11 @@ LiteDebug::LiteDebug(LiteApi::IApplication *app, QObject *parent) : QVBoxLayout *layout = new QVBoxLayout; QToolBar *widgetToolBar = new QToolBar; widgetToolBar->setIconSize(LiteApi::getToolBarIconSize(m_liteApp)); - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->setSpacing(0); QHBoxLayout *hbox = new QHBoxLayout; - hbox->setMargin(0); + hbox->setContentsMargins(0, 0, 0, 0); hbox->setSpacing(0); hbox->addWidget(widgetToolBar); QPushButton *close = new QPushButton(); diff --git a/liteidex/src/plugins/liteeditor/codecompleter.cpp b/liteidex/src/plugins/liteeditor/codecompleter.cpp index fe753352e..f12a48b5e 100644 --- a/liteidex/src/plugins/liteeditor/codecompleter.cpp +++ b/liteidex/src/plugins/liteeditor/codecompleter.cpp @@ -31,10 +31,16 @@ #include #include #include +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +#include +#else #include +#endif #include #include +#include #include +#include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) #define _CRTDBG_MAP_ALLOC @@ -159,7 +165,7 @@ class CodeCompleterInfo : public FakeToolTip : FakeToolTip(parent), m_label(new QLabel(this)) { QVBoxLayout *layout = new QVBoxLayout(this); - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->setSpacing(0); layout->addWidget(m_label); @@ -178,10 +184,14 @@ class CodeCompleterInfo : public FakeToolTip // Workaround QTCREATORBUG-11653 void calculateMaximumWidth() { +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + const int desktopWidth = screen()->availableGeometry().width(); +#else const QDesktopWidget *desktopWidget = QApplication::desktop(); const int desktopWidth = desktopWidget->isVirtualDesktop() ? desktopWidget->width() : desktopWidget->availableGeometry(desktopWidget->primaryScreen()).width(); +#endif const QMargins widgetMargins = contentsMargins(); const QMargins layoutMargins = layout()->contentsMargins(); const int margins = widgetMargins.left() + widgetMargins.right() @@ -217,7 +227,12 @@ QSize CodeCompleterListView::calculateSize() const const int visibleItems = qMin(model()->rowCount(), maxVisibleItems); const int firstVisibleRow = verticalScrollBar()->value(); - const QStyleOptionViewItem &option = viewOptions(); + QStyleOptionViewItem option; +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + initViewItemOption(&option); +#else + option = viewOptions(); +#endif QSize shint; for (int i = 0; i < visibleItems; ++i) { QSize tmp = itemDelegate()->sizeHint(option, model()->index(i + firstVisibleRow, 0)); @@ -522,9 +537,9 @@ int CodeCompleterProxyModel::filter(const QString &filter, int cs, LiteApi::Comp } } } - qStableSort(best.begin(), best.end(), ContentLessThan(filter)); - qStableSort(second.begin(), second.end(), ContentLessThan(filter)); - qStableSort(other.begin(), other.end(), ContentLessThan(filter)); + std::stable_sort(best.begin(), best.end(), ContentLessThan(filter)); + std::stable_sort(second.begin(), second.end(), ContentLessThan(filter)); + std::stable_sort(other.begin(), other.end(), ContentLessThan(filter)); m_items.append(best); m_items.append(second); m_items.append(other); @@ -543,7 +558,7 @@ int CodeCompleterProxyModel::filter(const QString &filter, int cs, LiteApi::Comp QStandardItem *item = m_model->itemFromIndex(index); m_items.append(item->clone()); } - qStableSort(m_items.begin(), m_items.end(), ContentLessThan(prefix)); + std::stable_sort(m_items.begin(), m_items.end(), ContentLessThan(prefix)); return m_items.size(); } @@ -576,8 +591,8 @@ int CodeCompleterProxyModel::filter(const QString &filter, int cs, LiteApi::Comp otherItems.append(item->clone()); } } - qStableSort(m_items.begin(), m_items.end(), ContentLessThan(prefix)); - qStableSort(otherItems.begin(), otherItems.end(), ContentLessThan(prefix)); + std::stable_sort(m_items.begin(), m_items.end(), ContentLessThan(prefix)); + std::stable_sort(otherItems.begin(), otherItems.end(), ContentLessThan(prefix)); m_items.append(otherItems); return m_items.size(); } @@ -623,7 +638,7 @@ int CodeCompleterProxyModel::filter(const QString &filter, int cs, LiteApi::Comp m_items.append(item->clone()); } } - qStableSort(m_items.begin(), m_items.end(), ContentLessThan(prefix)); + std::stable_sort(m_items.begin(), m_items.end(), ContentLessThan(prefix)); return m_items.size(); } @@ -767,7 +782,11 @@ void CodeCompleterEx::complete(const QRect &rect) return; } +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + const QRect screen = m_widget->screen()->availableGeometry(); +#else const QRect screen = QApplication::desktop()->availableGeometry(m_widget); +#endif Qt::LayoutDirection dir = m_widget->layoutDirection(); QPoint pos; int rh, w; diff --git a/liteidex/src/plugins/liteeditor/faketooltip.cpp b/liteidex/src/plugins/liteeditor/faketooltip.cpp index 55c87a4ba..94b257f45 100644 --- a/liteidex/src/plugins/liteeditor/faketooltip.cpp +++ b/liteidex/src/plugins/liteeditor/faketooltip.cpp @@ -58,7 +58,7 @@ void FakeToolTip::paintEvent(QPaintEvent *) { QStylePainter p(this); QStyleOptionFrame opt; - opt.init(this); + opt.initFrom(this); p.drawPrimitive(QStyle::PE_PanelTipLabel, opt); p.end(); } @@ -67,7 +67,7 @@ void FakeToolTip::resizeEvent(QResizeEvent *) { QStyleHintReturnMask frameMask; QStyleOption option; - option.init(this); + option.initFrom(this); if (style()->styleHint(QStyle::SH_ToolTip_Mask, &option, this, &frameMask)) setMask(frameMask.region); } diff --git a/liteidex/src/plugins/liteeditor/functiontooltip.cpp b/liteidex/src/plugins/liteeditor/functiontooltip.cpp index 2cdcbce52..141aad8c4 100644 --- a/liteidex/src/plugins/liteeditor/functiontooltip.cpp +++ b/liteidex/src/plugins/liteeditor/functiontooltip.cpp @@ -24,8 +24,12 @@ #include "functiontooltip.h" #include "faketooltip.h" -#include #include +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +#include +#else +#include +#endif #include #include #include @@ -48,7 +52,7 @@ FunctionTooltip::FunctionTooltip(LiteApi::IApplication *app, LiteApi::ITextEdito m_editWidget = LiteApi::getPlainTextEdit(editor); m_popup = new FakeToolTip(m_editWidget); QHBoxLayout *hbox = new QHBoxLayout; - hbox->setMargin(0); + hbox->setContentsMargins(0, 0, 0, 0); hbox->setSpacing(0); m_label = new QLabel; hbox->addWidget(m_label); @@ -193,11 +197,15 @@ void FunctionTooltip::showPopup(int startpos) QToolTip::hideText(); m_popup->setFixedWidth(m_popup->minimumSizeHint().width()); +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + const QRect screen = m_editor->widget()->screen()->availableGeometry(); +#else const QDesktopWidget *desktop = QApplication::desktop(); #ifdef Q_WS_MAC const QRect screen = desktop->availableGeometry(desktop->screenNumber(m_editor->widget())); #else const QRect screen = desktop->screenGeometry(desktop->screenNumber(m_editor->widget())); +#endif #endif const QSize sz = m_popup->sizeHint(); @@ -248,4 +256,3 @@ bool FunctionTooltip::restoreTip(int startpos) } return false; } - diff --git a/liteidex/src/plugins/liteeditor/liteeditor.cpp b/liteidex/src/plugins/liteeditor/liteeditor.cpp index 1f2e2a6c7..a8f420e16 100755 --- a/liteidex/src/plugins/liteeditor/liteeditor.cpp +++ b/liteidex/src/plugins/liteeditor/liteeditor.cpp @@ -39,6 +39,7 @@ #include #include #include +#include #include #include #include @@ -104,7 +105,7 @@ LiteEditor::LiteEditor(LiteApi::IApplication *app) m_editorWidget->setContextMenu(m_contextMenu); QVBoxLayout *layout = new QVBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->setSpacing(0); /* m_toolBar->setStyleSheet("QToolBar {border: 1px ; background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,stop: 0 #eeeeee, stop: 1 #ababab); }"\ @@ -113,7 +114,7 @@ LiteEditor::LiteEditor(LiteApi::IApplication *app) "QToolBar::separator {width:2px; margin-left:2px; margin-right:2px; background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,stop: 0 #dedede, stop: 1 #a0a0a0);}"); */ QHBoxLayout *toolLayout = new QHBoxLayout; - toolLayout->setMargin(0); + toolLayout->setContentsMargins(0, 0, 0, 0); toolLayout->setSpacing(0); toolLayout->addWidget(m_editToolBar); //toolLayout->addWidget(m_editNavBar); @@ -1247,8 +1248,13 @@ void LiteEditor::filePrint() #ifndef QT_NO_PRINTER QPrinter printer(QPrinter::HighResolution); QPrintDialog *dlg = new QPrintDialog(&printer, m_widget); - if (m_editorWidget->textCursor().hasSelection()) + if (m_editorWidget->textCursor().hasSelection()) { +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + dlg->setOption(QAbstractPrintDialog::PrintSelection); +#else dlg->addEnabledOption(QAbstractPrintDialog::PrintSelection); +#endif + } dlg->setWindowTitle(tr("Print Document")); if (dlg->exec() == QDialog::Accepted) { QPlainTextEdit::LineWrapMode mode = m_editorWidget->lineWrapMode(); @@ -1678,7 +1684,7 @@ void LiteEditor::loadColorStyleScheme() if (text) { if (text->foregound().isValid()) { p.setColor(QPalette::Text,text->foregound()); - p.setColor(QPalette::Foreground, text->foregound()); + p.setColor(QPalette::WindowText, text->foregound()); } if (text->background().isValid()) { p.setColor(QPalette::Base, text->background()); diff --git a/liteidex/src/plugins/liteeditor/liteeditor.h b/liteidex/src/plugins/liteeditor/liteeditor.h index 5532afaba..adaf6a740 100644 --- a/liteidex/src/plugins/liteeditor/liteeditor.h +++ b/liteidex/src/plugins/liteeditor/liteeditor.h @@ -35,6 +35,7 @@ #include #include #include +#include //#define LITEEDITOR_FIND diff --git a/liteidex/src/plugins/liteeditor/liteeditorfile.cpp b/liteidex/src/plugins/liteeditor/liteeditorfile.cpp index 6b1bd8ad3..8f962e458 100644 --- a/liteidex/src/plugins/liteeditor/liteeditorfile.cpp +++ b/liteidex/src/plugins/liteeditor/liteeditorfile.cpp @@ -22,6 +22,7 @@ // Creator: visualfc #include "liteeditorfile.h" +#include #include "liteeditor_global.h" #include "editorutil/checkdata.h" #include @@ -237,7 +238,7 @@ bool LiteEditorFile::loadFileHelper(const QString &fileName, const QString &mime } else if (lf == 0) { m_lineTerminatorMode = LFLineTerminator; } else { - lf = outText.indexOf(QRegExp("[^\r]\n"),lf-1); + lf = outText.indexOf(QRegularExpression("[^\r]\n"), lf - 1); if (lf >= 0) { m_lineTerminatorMode = LFLineTerminator; } else { diff --git a/liteidex/src/plugins/liteeditor/liteeditorfile.h b/liteidex/src/plugins/liteeditor/liteeditorfile.h index fdc56a133..a467300e7 100644 --- a/liteidex/src/plugins/liteeditor/liteeditorfile.h +++ b/liteidex/src/plugins/liteeditor/liteeditorfile.h @@ -26,6 +26,7 @@ #include "liteapi/liteapi.h" #include "editorutil/libucd.h" +#include class QTextDocument; class LiteEditorFile : public LiteApi::IFile diff --git a/liteidex/src/plugins/liteeditor/liteeditoroption.cpp b/liteidex/src/plugins/liteeditor/liteeditoroption.cpp index 082e20ec0..0a7d6dffa 100755 --- a/liteidex/src/plugins/liteeditor/liteeditoroption.cpp +++ b/liteidex/src/plugins/liteeditor/liteeditoroption.cpp @@ -30,6 +30,7 @@ #include #include #include +#include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) @@ -300,7 +301,7 @@ void LiteEditorOption::load() ui->allowVscrollLastLineCheckBox->setChecked(allowVscrollLastLine); QStringList mimeTypes = m_liteApp->editorManager()->mimeTypeList(); - qStableSort(mimeTypes); + std::stable_sort(mimeTypes.begin(), mimeTypes.end()); m_mimeModel->removeRows(0,m_mimeModel->rowCount()); foreach(QString mime, mimeTypes) { if (mime.startsWith("text/") || mime.startsWith("application/")) { diff --git a/liteidex/src/plugins/liteeditor/liteeditorwidget.cpp b/liteidex/src/plugins/liteeditor/liteeditorwidget.cpp index 3642ece61..14f67432f 100644 --- a/liteidex/src/plugins/liteeditor/liteeditorwidget.cpp +++ b/liteidex/src/plugins/liteeditor/liteeditorwidget.cpp @@ -145,7 +145,11 @@ void LiteEditorWidget::focusInEvent(QFocusEvent *e) void LiteEditorWidget::wheelEvent(QWheelEvent *e) { if (m_scrollWheelZooming && e->modifiers() & Qt::ControlModifier) { +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + const int delta = e->angleDelta().y(); +#else const int delta = e->delta(); +#endif if (delta < 0) zoomOut(); else if (delta > 0) @@ -332,7 +336,12 @@ QString LiteEditorWidget::cursorToHtml(QTextCursor cursor) const const int endOfDocument = tempDocument->characterCount() - 1; for (QTextBlock current = start; current.isValid() && current != end; current = current.next()) { const QTextLayout *layout = current.layout(); - foreach (const QTextLayout::FormatRange &range, layout->additionalFormats()) { +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + const auto formats = layout->formats(); +#else + const auto formats = layout->additionalFormats(); +#endif + foreach (const QTextLayout::FormatRange &range, formats) { const int start = current.position() + range.start - selectionStart; const int end = start + range.length; if (end <= 0 || start >= endOfDocument) diff --git a/liteidex/src/plugins/liteeditor/liteeditorwidgetbase.cpp b/liteidex/src/plugins/liteeditor/liteeditorwidgetbase.cpp index 62f533119..4be663b6a 100644 --- a/liteidex/src/plugins/liteeditor/liteeditorwidgetbase.cpp +++ b/liteidex/src/plugins/liteeditor/liteeditorwidgetbase.cpp @@ -37,6 +37,7 @@ #include #include #include +#include #include #include //lite_memory_check_begin @@ -373,7 +374,7 @@ LiteEditorWidgetBase::LiteEditorWidgetBase(LiteApi::IApplication *app, QWidget * m_indentLineForeground = QColor(Qt::darkCyan); m_visualizeWhitespaceForeground = QColor(Qt::darkGray); m_extraForeground = QColor(Qt::darkCyan); - m_extraBackground = m_extraArea->palette().color(QPalette::Background); + m_extraBackground = m_extraArea->palette().color(QPalette::Window); m_currentLineBackground = QColor(180,200,200,128); m_matchBracketsBackground = QColor(Qt::gray); m_matchBracketsBackground.setAlpha(128); @@ -548,7 +549,7 @@ int LiteEditorWidgetBase::tabSize() const void LiteEditorWidgetBase::updateTabWidth() { - setTabStopWidth(QFontMetrics(font()).averageCharWidth() * m_nTabSize); + setTabStopDistance(QFontMetrics(font()).averageCharWidth() * m_nTabSize); } void LiteEditorWidgetBase::setTabToSpaces(bool b) @@ -776,7 +777,7 @@ void LiteEditorWidgetBase::setExtraColor(const QColor &foreground,const QColor & if (background.isValid()) { m_extraBackground = background; } else { - m_extraBackground = m_extraArea->palette().color(QPalette::Background); + m_extraBackground = m_extraArea->palette().color(QPalette::Window); } } @@ -794,7 +795,7 @@ int LiteEditorWidgetBase::extraAreaWidth() max /= 10; ++digits; } - space += linefm.width(QLatin1Char('9')) * digits; + space += linefm.horizontalAdvance(QLatin1Char('9')) * digits; } if (m_marksVisible) { int markWidth = fm.lineSpacing(); @@ -1535,7 +1536,7 @@ void LiteEditorWidgetBase::setFindOption(LiteApi::FindOption *opt) } else { m_findExpression.setPatternSyntax(QRegExp::FixedString); } - m_findFlags = 0; + m_findFlags = QTextDocument::FindFlags(); if (opt->backWard) { m_findFlags |= QTextDocument::FindBackward; } @@ -1853,7 +1854,7 @@ void LiteEditorWidgetBase::joinLines() QString cutLine = cursor.selectedText(); // Collapse leading whitespaces to one or insert whitespace - cutLine.replace(QRegExp(QLatin1String("^\\s*")), QLatin1String(" ")); + cutLine.replace(QRegularExpression(QLatin1String("^\\s*")), QLatin1String(" ")); cursor.movePosition(QTextCursor::Right, QTextCursor::KeepAnchor); cursor.removeSelectedText(); @@ -3185,7 +3186,7 @@ QTextBlock LiteEditorWidgetBase::foldedBlockAt(const QPoint &pos, QRect *box) co QRectF collapseRect(lineRect.right() + 12, lineRect.top(), - fontMetrics().width(QLatin1String(" {...}; ")), + fontMetrics().horizontalAdvance(QLatin1String(" {...}; ")), lineRect.height()); if (collapseRect.contains(pos)) { QTextBlock result = block; @@ -3643,7 +3644,7 @@ void LiteEditorWidgetBase::mouseMoveEvent(QMouseEvent *e) int column = this->tabSettings().columnAt( cursor.block().text(), cursor.positionInBlock()); if (cursor.positionInBlock() == cursor.block().length()-1) - column += (e->pos().x() - cursorRect().center().x())/QFontMetricsF(font()).width(QLatin1Char(' ')); + column += (e->pos().x() - cursorRect().center().x())/QFontMetricsF(font()).horizontalAdvance(QLatin1Char(' ')); m_blockSelection.moveAnchor(cursor.blockNumber(), column); setTextCursor(m_blockSelection.selection(this->tabSettings())); viewport()->update(); @@ -3723,7 +3724,8 @@ static bool findInBlock(const QTextBlock &block, const QRegExp &expression, int } if (idx == -1) return false; - cursor = QTextCursor(block.docHandle(), block.position() + idx); + cursor = QTextCursor(block); + cursor.setPosition(block.position() + idx); cursor.setPosition(cursor.position() + expr.matchedLength(), QTextCursor::KeepAnchor); return true; } @@ -3952,7 +3954,7 @@ void LiteEditorWidgetBase::paintEvent(QPaintEvent *e) && block.position() <= m_blockSelection.lastBlock.block().position()) { QString text = block.text(); const TextEditor::TabSettings &ts = this->tabSettings(); - qreal spacew = QFontMetricsF(font()).width(QLatin1Char(' ')); + qreal spacew = QFontMetricsF(font()).horizontalAdvance(QLatin1Char(' ')); int offset = 0; int relativePos = ts.positionAtColumn(text, m_blockSelection.firstVisualColumn, &offset); @@ -4157,7 +4159,7 @@ void LiteEditorWidgetBase::paintEvent(QPaintEvent *e) QRectF collapseRect(lineRect.right() + 12, lineRect.top(), - fontMetrics().width(QLatin1String(" {...}; ")), + fontMetrics().horizontalAdvance(QLatin1String(" {...}; ")), lineRect.height()); painter.setRenderHint(QPainter::Antialiasing, true); painter.translate(.5, .5); @@ -4206,7 +4208,7 @@ void LiteEditorWidgetBase::paintEvent(QPaintEvent *e) if (backgroundVisible() && !block.isValid() && offset.y() <= er.bottom() && (centerOnScroll() || verticalScrollBar()->maximum() == verticalScrollBar()->minimum())) { - painter.fillRect(QRect(QPoint((int)er.left(), (int)offset.y()), er.bottomRight()), palette().background()); + painter.fillRect(QRect(QPoint((int)er.left(), (int)offset.y()), er.bottomRight()), palette().brush(QPalette::Window)); } if (m_rightLineVisible) { diff --git a/liteidex/src/plugins/liteeditor/liteeditorwidgetbase.h b/liteidex/src/plugins/liteeditor/liteeditorwidgetbase.h index 5f3a99095..d7c389212 100644 --- a/liteidex/src/plugins/liteeditor/liteeditorwidgetbase.h +++ b/liteidex/src/plugins/liteeditor/liteeditorwidgetbase.h @@ -26,6 +26,7 @@ #include #include +#include #include "liteeditorapi/liteeditorapi.h" #include "qtc_texteditor/autocompleter.h" #include "qtc_texteditor/basetextblockselection.h" diff --git a/liteidex/src/plugins/liteenv/envmanager.cpp b/liteidex/src/plugins/liteenv/envmanager.cpp index 8b1daf680..a521bf722 100755 --- a/liteidex/src/plugins/liteenv/envmanager.cpp +++ b/liteidex/src/plugins/liteenv/envmanager.cpp @@ -130,7 +130,7 @@ void Env::loadGoEnv() connect(m_process,SIGNAL(readyReadStandardOutput()),this,SLOT(readStdout())); connect(m_process,SIGNAL(readyReadStandardError()),this,SLOT(readStderr())); connect(m_process,SIGNAL(finished(int,QProcess::ExitStatus)),this,SLOT(finished(int,QProcess::ExitStatus))); - connect(m_process,SIGNAL(error(QProcess::ProcessError)),this,SLOT(error(QProcess::ProcessError))); + connect(m_process,SIGNAL(errorOccurred(QProcess::ProcessError)),this,SLOT(error(QProcess::ProcessError))); } m_process->stopAndWait(100,200); m_goEnvMap.clear(); @@ -474,7 +474,7 @@ bool EnvManager::initWithApp(LiteApi::IApplication *app) m_liteApp->extension()->addObject("LiteApi.IEnvManager",this); - connect(m_envCmb,SIGNAL(activated(QString)),this,SLOT(envActivated(QString))); + connect(m_envCmb,SIGNAL(textActivated(QString)),this,SLOT(envActivated(QString))); connect(m_selectActionGroup,SIGNAL(triggered(QAction*)),this,SLOT(selectEnvAction(QAction*))); connect(editAct,SIGNAL(triggered()),this,SLOT(editCurrentEnv())); connect(reloadAct,SIGNAL(triggered()),this,SLOT(reloadCurrentEnv())); diff --git a/liteidex/src/plugins/liteenv/liteenvoption.cpp b/liteidex/src/plugins/liteenv/liteenvoption.cpp index 2c9d99b2d..cf327863a 100644 --- a/liteidex/src/plugins/liteenv/liteenvoption.cpp +++ b/liteidex/src/plugins/liteenv/liteenvoption.cpp @@ -47,7 +47,7 @@ LiteEnvOption::LiteEnvOption(LiteApi::IApplication *app,QObject *parent) : m_fileModel = new QFileSystemModel(this); QString path = m_liteApp->resourcePath()+"/liteenv"; QModelIndex root = m_fileModel->setRootPath(path); - ui->fileTreeView->setEditTriggers(0); + ui->fileTreeView->setEditTriggers(QAbstractItemView::NoEditTriggers); ui->fileTreeView->setModel(m_fileModel); ui->fileTreeView->setRootIndex(root); #if QT_VERSION >= 0x050000 diff --git a/liteidex/src/plugins/litefind/filesearch.cpp b/liteidex/src/plugins/litefind/filesearch.cpp index b341ed5b7..f0a6b878b 100644 --- a/liteidex/src/plugins/litefind/filesearch.cpp +++ b/liteidex/src/plugins/litefind/filesearch.cpp @@ -23,6 +23,7 @@ #include "filesearch.h" #include "litefind_global.h" +#include "liteapi/liteqt.h" #include #include #include @@ -103,7 +104,7 @@ void FindThread::findFile(const QRegExp ®, const QString &fileName) file.seek(0); QTextStream stream(&file); - stream.setCodec("utf-8"); + qtSetUtf8Encoding(stream); QString line; int lineNr = 1; while (!stream.atEnd()) { @@ -226,7 +227,7 @@ FileSearch::FileSearch(LiteApi::IApplication *app, QObject *parent) : QHBoxLayout *findLayout = new QHBoxLayout; findLayout->setSpacing(6); - //findLayout->setMargin(0); + //findLayout->setContentsMargins(0, 0, 0, 0); m_findButton = new QPushButton(tr("Search")); m_stopButton = new QPushButton(tr("Cancel")); m_stopButton->setEnabled(false); diff --git a/liteidex/src/plugins/litefind/filesearch.h b/liteidex/src/plugins/litefind/filesearch.h index 18544d2fb..14c95dd9a 100644 --- a/liteidex/src/plugins/litefind/filesearch.h +++ b/liteidex/src/plugins/litefind/filesearch.h @@ -24,6 +24,8 @@ #ifndef FILESEARCH_H #define FILESEARCH_H +#include + #include "liteapi/liteapi.h" #include "litefindapi/litefindapi.h" #include "textoutput/terminaledit.h" diff --git a/liteidex/src/plugins/litefind/findeditor.cpp b/liteidex/src/plugins/litefind/findeditor.cpp index 4bada6521..c0d034d6b 100644 --- a/liteidex/src/plugins/litefind/findeditor.cpp +++ b/liteidex/src/plugins/litefind/findeditor.cpp @@ -33,7 +33,7 @@ #include #include #include -#include +#include #include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) @@ -87,11 +87,11 @@ FindEditor::FindEditor(LiteApi::IApplication *app, QObject *parent) : connect(close,SIGNAL(clicked()),this,SLOT(hideFind())); QGridLayout *layout = new QGridLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->setVerticalSpacing(1); QHBoxLayout *optLayout = new QHBoxLayout; - optLayout->setMargin(0); + optLayout->setContentsMargins(0, 0, 0, 0); optLayout->addWidget(m_matchWordCheckBox); optLayout->addWidget(m_matchCaseCheckBox); @@ -276,7 +276,7 @@ QTextCursor FindEditor::findEditor(QTextDocument *doc, const QTextCursor &cursor QTextCursor FindEditor::findEditorHelper(QTextDocument *doc, int from, FindOption *opt, bool wrap) { - QTextDocument::FindFlags flags = 0; + QTextDocument::FindFlags flags; if (opt->backWard) { flags |= QTextDocument::FindBackward; } @@ -293,7 +293,10 @@ QTextCursor FindEditor::findEditorHelper(QTextDocument *doc, int from, FindOptio QTextCursor find; if (opt->useRegexp) { - find = doc->find(QRegExp(opt->findText,cs),from,flags); + QRegularExpression re(opt->findText); + if (cs == Qt::CaseInsensitive) + re.setPatternOptions(QRegularExpression::CaseInsensitiveOption); + find = doc->find(re, from, flags); } else { find = doc->find(opt->findText,from,flags); } @@ -305,7 +308,10 @@ QTextCursor FindEditor::findEditorHelper(QTextDocument *doc, int from, FindOptio from = 0; } if (opt->useRegexp) { - find = doc->find(QRegExp(opt->findText,cs),from,flags); + QRegularExpression re(opt->findText); + if (cs == Qt::CaseInsensitive) + re.setPatternOptions(QRegularExpression::CaseInsensitiveOption); + find = doc->find(re, from, flags); } else { find = doc->find(opt->findText,from,flags); } @@ -358,9 +364,12 @@ void FindEditor::replaceHelper(LiteApi::ITextEditor *editor, FindOption *opt, in startColumn -= text.length(); } if (opt->useRegexp) { - text.replace(QRegExp(opt->findText,cs),opt->replaceText); + QRegularExpression re(opt->findText); + if (cs == Qt::CaseInsensitive) + re.setPatternOptions(QRegularExpression::CaseInsensitiveOption); + text.replace(re, opt->replaceText); } else { - text.replace(QRegExp(opt->findText,cs,QRegExp::FixedString),opt->replaceText); + text.replace(opt->findText, opt->replaceText, cs); } find.removeSelectedText(); from = find.position()+ text.length(); @@ -471,7 +480,7 @@ void FindEditor::findOptionChanged() getFindOption(&m_option,false); m_status->setText(tr("Ready")); if (m_option.useRegexp) { - QRegExp reg(m_option.findText); + QRegularExpression reg(m_option.findText); if (!reg.isValid()) { m_status->setText(reg.errorString()); } diff --git a/liteidex/src/plugins/litefind/replacedocument.cpp b/liteidex/src/plugins/litefind/replacedocument.cpp index 20a4f1379..e5f8f481f 100644 --- a/liteidex/src/plugins/litefind/replacedocument.cpp +++ b/liteidex/src/plugins/litefind/replacedocument.cpp @@ -26,6 +26,7 @@ #include #include #include +#include #include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) @@ -131,7 +132,7 @@ QTextDocument *ReplaceDocument::fileDocument(const QString &fileName, QTextCurso if (lf <= 0) { crlf = false; } else { - lf = text.indexOf(QRegExp("[^\r]\n"),lf-1); + lf = text.indexOf(QRegularExpression("[^\r]\n"), lf - 1); if (lf >= 0) { crlf = false; } else { diff --git a/liteidex/src/plugins/markdown/htmlpreview.cpp b/liteidex/src/plugins/markdown/htmlpreview.cpp index 0d4fddb75..342bb12ce 100644 --- a/liteidex/src/plugins/markdown/htmlpreview.cpp +++ b/liteidex/src/plugins/markdown/htmlpreview.cpp @@ -42,6 +42,9 @@ #ifndef QT_NO_PRINTER #include #include +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +#include +#endif #endif //lite_memory_check_begin @@ -204,7 +207,7 @@ void HtmlPreview::appLoaded() m_cssMenu->addActions(m_cssActGroup->actions()); QVBoxLayout *layout = new QVBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->setSpacing(0); layout->addWidget(m_htmlWidget->widget(),1); m_widget->setLayout(layout); @@ -349,7 +352,9 @@ void HtmlPreview::loadHtmlData(const QByteArray &data, const QByteArray &title, QTextCodec *codec = QTextCodec::codecForName("utf-8"); m_exportHtml.replace("__MARKDOWN_TITLE__",title); #if QT_VERSION >= 0x050000 - m_exportHtml.replace("__MARKDOWN_CONTENT__","
"+codec->toUnicode(data).toHtmlEscaped().toUtf8()+"
"); + const QByteArray escaped = codec->toUnicode(data).toHtmlEscaped().toUtf8(); + const QByteArray content = QByteArrayLiteral("
") + escaped + QByteArrayLiteral("
"); + m_exportHtml.replace("__MARKDOWN_CONTENT__", content); #else m_exportHtml.replace("__MARKDOWN_CONTENT__","
"+Qt::escape(codec->toUnicode(data)).toUtf8()+"
"); #endif @@ -432,8 +437,13 @@ void HtmlPreview::printPreview() } #ifndef QT_NO_PRINTER QPrinter printer(QPrinter::HighResolution); +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + printer.setPageMargins(QMarginsF(10, 10, 10, 10), QPageLayout::Millimeter); + printer.setPageSize(QPageSize(QPageSize::A4)); +#else printer.setPageMargins(10,10,10,10,QPrinter::Millimeter); printer.setPageSize(QPrinter::A4); +#endif QPrintPreviewDialog dlg(&printer,m_widget); connect(&dlg,SIGNAL(paintRequested(QPrinter*)),m_htmlWidget,SLOT(print(QPrinter*))); dlg.exec(); diff --git a/liteidex/src/plugins/markdown/markdownbatchbrowser.cpp b/liteidex/src/plugins/markdown/markdownbatchbrowser.cpp index 6eb6f2297..b192aad03 100644 --- a/liteidex/src/plugins/markdown/markdownbatchbrowser.cpp +++ b/liteidex/src/plugins/markdown/markdownbatchbrowser.cpp @@ -75,7 +75,7 @@ MarkdownBatchBrowser::MarkdownBatchBrowser(LiteApi::IApplication *app, QObject * m_model->setHorizontalHeaderLabels(QStringList()<< "FilePath"); ui->setupUi(m_widget); ui->filesTreeView->setModel(m_model); - ui->filesTreeView->setEditTriggers(0); + ui->filesTreeView->setEditTriggers(QAbstractItemView::NoEditTriggers); ui->filesTreeView->setDragDropMode(QAbstractItemView::NoDragDrop); connect(ui->importFolderPushButton,SIGNAL(clicked()),this,SLOT(browserImportFolder())); connect(ui->addFilesPushButton,SIGNAL(clicked()),this,SLOT(addFiles())); @@ -184,7 +184,7 @@ static QByteArray head = "" ""; -static QByteArray end = +static QByteArray htmlEnd = "" ""; @@ -214,11 +214,19 @@ void MarkdownBatchBrowser::loadFinished(bool b) } } else if (m_mode == MODE_MERGE_PRINT) { QPrinter printer(QPrinter::HighResolution); +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + printer.setPageMargins(QMarginsF(10, 10, 10, 10), QPageLayout::Millimeter); +#else printer.setPageMargins(10,10,10,10,QPrinter::Millimeter); +#endif m_doc->print(&printer); } else if (m_mode == MODE_MERGE_PRINTPREVIEW) { QPrinter printer(QPrinter::HighResolution); +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + printer.setPageMargins(QMarginsF(10, 10, 10, 10), QPageLayout::Millimeter); +#else printer.setPageMargins(10,10,10,10,QPrinter::Millimeter); +#endif QPrintPreviewDialog dlg(&printer); connect(&dlg,SIGNAL(paintRequested(QPrinter*)),m_doc,SLOT(print(QPrinter*))); dlg.exec(); diff --git a/liteidex/src/plugins/qsqleditor/qsqleditor.cpp b/liteidex/src/plugins/qsqleditor/qsqleditor.cpp index 8a67ddff9..083ed2fa5 100644 --- a/liteidex/src/plugins/qsqleditor/qsqleditor.cpp +++ b/liteidex/src/plugins/qsqleditor/qsqleditor.cpp @@ -48,7 +48,7 @@ QSqlEditor::QSqlEditor(LiteApi::IApplication *app) : { ui->setupUi(m_widget); m_dbModel = new QStandardItemModel(this); - ui->dbTreeView->setEditTriggers(0); + ui->dbTreeView->setEditTriggers(QAbstractItemView::NoEditTriggers); ui->dbTreeView->setModel(m_dbModel); ui->dbTreeView->setHeaderHidden(true); ui->dbTreeView->setContextMenuPolicy(Qt::CustomContextMenu); diff --git a/liteidex/src/plugins/quickopen/quickopenfiles.cpp b/liteidex/src/plugins/quickopen/quickopenfiles.cpp index 4917d3b81..e0d0341de 100644 --- a/liteidex/src/plugins/quickopen/quickopenfiles.cpp +++ b/liteidex/src/plugins/quickopen/quickopenfiles.cpp @@ -31,6 +31,7 @@ #include #include #include +#include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) #define _CRTDBG_MAP_ALLOC @@ -114,7 +115,7 @@ void QuickOpenFiles::updateModel() names.push_back(editor->name()+";"+editor->filePath()); m_editors.push_back(editor->filePath()); } - qSort(names); + std::sort(names.begin(), names.end()); foreach (QString text, names) { QStringList ar = text.split(";"); m_model->appendRow(QList() << new QStandardItem("*") << new QStandardItem(ar[0]) << new QStandardItem(ar[1])); @@ -139,7 +140,7 @@ void QuickOpenFiles::startFindThread() int count = m_model->rowCount(); int maxcount = count+m_liteApp->settings()->value(QUICKOPEN_FILES_MAXCOUNT,100000).toInt(); - QSet editorSet = m_editors.toSet(); + QSet editorSet(m_editors.begin(), m_editors.end()); LiteApi::IEditor *editor = m_liteApp->editorManager()->currentEditor(); QStringList folderList; diff --git a/liteidex/src/plugins/quickopen/quickopenwidget.cpp b/liteidex/src/plugins/quickopen/quickopenwidget.cpp index f17ff6b39..607c5e4e3 100644 --- a/liteidex/src/plugins/quickopen/quickopenwidget.cpp +++ b/liteidex/src/plugins/quickopen/quickopenwidget.cpp @@ -61,7 +61,7 @@ QuickOpenWidget::QuickOpenWidget(LiteApi::IApplication *app, QWidget *parent) : m_wrap = true; m_layout = new QVBoxLayout; - m_layout->setMargin(0); + m_layout->setContentsMargins(0, 0, 0, 0); m_layout->setSpacing(0); m_layout->addWidget(m_edit); m_layout->addWidget(m_view); diff --git a/liteidex/src/plugins/terminal/terminal.cpp b/liteidex/src/plugins/terminal/terminal.cpp index c61a17e70..f7db00563 100644 --- a/liteidex/src/plugins/terminal/terminal.cpp +++ b/liteidex/src/plugins/terminal/terminal.cpp @@ -124,7 +124,9 @@ Terminal::Terminal(LiteApi::IApplication *app, QObject *parent) : LiteApi::ITerm m_liteApp(app), m_indexId(0) { qRegisterMetaType("TabInfoData"); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) qRegisterMetaTypeStreamOperators("TabInfoData"); +#endif m_widget = new QWidget; m_tab = new LiteTabWidget(QSize(16,16)); @@ -133,7 +135,7 @@ Terminal::Terminal(LiteApi::IApplication *app, QObject *parent) : LiteApi::ITerm QVBoxLayout *layout = new QVBoxLayout(m_widget); - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->setSpacing(0); layout->addWidget(m_tab->tabBarWidget()); layout->addWidget(m_tab->stackedWidget()); diff --git a/liteidex/src/plugins/webkithtmlwidget/webkitbrowser.cpp b/liteidex/src/plugins/webkithtmlwidget/webkitbrowser.cpp index 48c867d7d..a7651ee71 100644 --- a/liteidex/src/plugins/webkithtmlwidget/webkitbrowser.cpp +++ b/liteidex/src/plugins/webkithtmlwidget/webkitbrowser.cpp @@ -87,7 +87,7 @@ WebKitBrowser::WebKitBrowser(LiteApi::IApplication *app, QObject *parent) : m_progressBar->setRange(0,100); QVBoxLayout *layout = new QVBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->setSpacing(0); layout->addWidget(toolBar); diff --git a/liteidex/src/plugins/welcome/welcomebrowser.cpp b/liteidex/src/plugins/welcome/welcomebrowser.cpp index 58d509070..3d2bd4ea4 100644 --- a/liteidex/src/plugins/welcome/welcomebrowser.cpp +++ b/liteidex/src/plugins/welcome/welcomebrowser.cpp @@ -58,7 +58,7 @@ WelcomeBrowser::WelcomeBrowser(LiteApi::IApplication *app, QObject *parent) m_browser->toolBar()->hide(); QVBoxLayout *mainLayout = new QVBoxLayout; - mainLayout->setMargin(0); + mainLayout->setContentsMargins(0, 0, 0, 0); mainLayout->addWidget(m_browser->widget()); diff --git a/liteidex/src/utils/dlvclient/dlvclient.h b/liteidex/src/utils/dlvclient/dlvclient.h index f883f7f68..eb662cc1e 100644 --- a/liteidex/src/utils/dlvclient/dlvclient.h +++ b/liteidex/src/utils/dlvclient/dlvclient.h @@ -42,7 +42,7 @@ struct ResponseError void fromMap(const QVariantMap &map) { error = map["error"].toString(); - id = map["id"].toInt(); + id = map["id"].toString(); result = map["result"]; } }; diff --git a/liteidex/src/utils/documentbrowser/documentbrowser.cpp b/liteidex/src/utils/documentbrowser/documentbrowser.cpp index 43ba4dffb..6c930cca3 100644 --- a/liteidex/src/utils/documentbrowser/documentbrowser.cpp +++ b/liteidex/src/utils/documentbrowser/documentbrowser.cpp @@ -90,7 +90,7 @@ DocumentBrowser::DocumentBrowser(LiteApi::IApplication *app, QObject *parent) : m_toolBar->addAction(m_reloadUrlAct); QVBoxLayout *mainLayout = new QVBoxLayout; - mainLayout->setMargin(0); + mainLayout->setContentsMargins(0, 0, 0, 0); mainLayout->setSpacing(0); mainLayout->addWidget(m_toolBar); @@ -111,7 +111,7 @@ DocumentBrowser::DocumentBrowser(LiteApi::IApplication *app, QObject *parent) : connect(m_backwardAct,SIGNAL(triggered()),this,SLOT(backward())); connect(m_forwardAct,SIGNAL(triggered()),this,SLOT(forward())); connect(m_reloadUrlAct,SIGNAL(triggered()),this,SLOT(reloadUrl())); - connect(m_urlComboBox,SIGNAL(activated(QString)),this,SLOT(activatedUrl(QString))); + connect(m_urlComboBox,SIGNAL(textActivated(QString)),this,SLOT(activatedUrl(QString))); connect(this,SIGNAL(backwardAvailable(bool)),m_backwardAct,SLOT(setEnabled(bool))); connect(this,SIGNAL(forwardAvailable(bool)),m_forwardAct,SLOT(setEnabled(bool))); diff --git a/liteidex/src/utils/editorutil/editorutil.cpp b/liteidex/src/utils/editorutil/editorutil.cpp index 9dcf46484..9b03358d6 100644 --- a/liteidex/src/utils/editorutil/editorutil.cpp +++ b/liteidex/src/utils/editorutil/editorutil.cpp @@ -28,6 +28,7 @@ #include #include #include +#include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) #define _CRTDBG_MAP_ALLOC @@ -404,4 +405,3 @@ QString EditorUtil::unifiedDiffText(const QString &text1, const QString &text2) return UnifiedDiffLines(text1,text2); } - diff --git a/liteidex/src/utils/filesystem/filesystemwidget.cpp b/liteidex/src/utils/filesystem/filesystemwidget.cpp index 22b19f204..772f1c097 100644 --- a/liteidex/src/utils/filesystem/filesystemwidget.cpp +++ b/liteidex/src/utils/filesystem/filesystemwidget.cpp @@ -43,6 +43,7 @@ #include #include #include +#include #include #include #ifdef Q_OS_WIN @@ -80,7 +81,7 @@ FileSystemWidget::FileSystemWidget(bool bMultiDirMode, LiteApi::IApplication *ap m_tree->setModel(m_model); QVBoxLayout *layout = new QVBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->addWidget(m_tree); this->setLayout(layout); diff --git a/liteidex/src/utils/fileutil/fileutil.cpp b/liteidex/src/utils/fileutil/fileutil.cpp index 8a2193e72..3cecb02c2 100644 --- a/liteidex/src/utils/fileutil/fileutil.cpp +++ b/liteidex/src/utils/fileutil/fileutil.cpp @@ -129,9 +129,9 @@ QMap FileUtil::readFileContext(QIODevice *dev) foreach (QString line, list) { if (line.size() >= 1 && line.at(0) == '#') continue; - QStringList v = line.split(QRegExp("\\+="),qtSkipEmptyParts); + QStringList v = line.split("+=",qtSkipEmptyParts); if (v.count() == 1) { - v = line.split(QRegExp("="),qtSkipEmptyParts); + v = line.split("=",qtSkipEmptyParts); if (v.count() == 2) { QStringList v2 = v.at(1).split(" ",qtSkipEmptyParts); if (!v2.isEmpty()) { @@ -770,4 +770,3 @@ bool FileUtil::moveToTrash(const QString &fileName) return getTrash()->moveToTrash(fileName); } #endif - diff --git a/liteidex/src/utils/fileutil/fileutil_mac.mm b/liteidex/src/utils/fileutil/fileutil_mac.mm index 797cc1395..58bb5fbd3 100644 --- a/liteidex/src/utils/fileutil/fileutil_mac.mm +++ b/liteidex/src/utils/fileutil/fileutil_mac.mm @@ -41,18 +41,18 @@ bool FileUtil::moveToTrash(const QString &fileName) { #ifdef Q_OS_MACOS // desktop macOS has a trash can - QMacAutoReleasePool pool; - - QFileInfo info(fileName); - NSString *filepath = info.filePath().toNSString(); - NSURL *fileurl = [NSURL fileURLWithPath:filepath isDirectory:info.isDir()]; - NSURL *resultingUrl = nil; - NSError *nserror = nil; - NSFileManager *fm = [NSFileManager defaultManager]; - if ([fm trashItemAtURL:fileurl resultingItemURL:&resultingUrl error:&nserror] != YES) { - return false; + @autoreleasepool { + QFileInfo info(fileName); + NSString *filepath = info.filePath().toNSString(); + NSURL *fileurl = [NSURL fileURLWithPath:filepath isDirectory:info.isDir()]; + NSURL *resultingUrl = nil; + NSError *nserror = nil; + NSFileManager *fm = [NSFileManager defaultManager]; + if ([fm trashItemAtURL:fileurl resultingItemURL:&resultingUrl error:&nserror] != YES) { + return false; + } + return true; } - return true; #else return false; #endif diff --git a/liteidex/src/utils/folderview/dirsortfilterproxymodel.cpp b/liteidex/src/utils/folderview/dirsortfilterproxymodel.cpp index d43a2c1e9..2ae0972a5 100644 --- a/liteidex/src/utils/folderview/dirsortfilterproxymodel.cpp +++ b/liteidex/src/utils/folderview/dirsortfilterproxymodel.cpp @@ -24,7 +24,6 @@ #include "dirsortfilterproxymodel.h" #include #include -#include #include //lite_memory_check_begin #if defined(WIN32) && defined(_MSC_VER) && defined(_DEBUG) @@ -73,7 +72,7 @@ bool QDirSortItemComparator::sort(const QDirSortItem &n1, const QDirSortItem &n2 r = f1->item.lastModified().secsTo(f2->item.lastModified()); break; case QDir::Size: - r = int(qBound(-1, f2->item.size() - f1->item.size(), 1)); + r = int(qBound(-1, f2->item.size() - f1->item.size(), 1LL)); break; case QDir::Type: { diff --git a/liteidex/src/utils/folderview/filesystemmodelex.cpp b/liteidex/src/utils/folderview/filesystemmodelex.cpp index beffb4d71..ba6948bc0 100644 --- a/liteidex/src/utils/folderview/filesystemmodelex.cpp +++ b/liteidex/src/utils/folderview/filesystemmodelex.cpp @@ -88,7 +88,7 @@ QVariant FileSystemModelEx::data(const QModelIndex &index, int role) const return QString("%1\n%2\n%3") .arg(QDir::toNativeSeparators(info.filePath())) .arg(fileSize(info.size())) - .arg(info.lastModified().toString(Qt::SystemLocaleDate)); + .arg(QLocale::system().toString(info.lastModified(), QLocale::ShortFormat)); } } return QFileSystemModel::data(index,role); @@ -97,4 +97,3 @@ QVariant FileSystemModelEx::data(const QModelIndex &index, int role) const - diff --git a/liteidex/src/utils/folderview/multifoldermodel.cpp b/liteidex/src/utils/folderview/multifoldermodel.cpp index 63fad1dfb..65d03e336 100644 --- a/liteidex/src/utils/folderview/multifoldermodel.cpp +++ b/liteidex/src/utils/folderview/multifoldermodel.cpp @@ -25,7 +25,6 @@ #include "filesystemmodelex.h" #include #include -#include #include #include //lite_memory_check_begin @@ -75,7 +74,7 @@ bool QDirSortItemComparator::sort(const QDirSortItem &n1, const QDirSortItem &n2 r = f1->item.lastModified().secsTo(f2->item.lastModified()); break; case QDir::Size: - r = int(qBound(-1, f2->item.size() - f1->item.size(), 1)); + r = int(qBound(-1, f2->item.size() - f1->item.size(), 1LL)); break; case QDir::Type: { @@ -325,7 +324,7 @@ QFile::Permissions MultiFolderModel::permissions(const QModelIndex &index) const { SourceModelIndex si = this->mapToSourceEx(index); if (!si.isValid()) { - return 0; + return QFile::Permissions(); } return ((QFileSystemModel*)si.model)->permissions(si.index); } diff --git a/liteidex/src/utils/folderview/multiindexmodel.cpp b/liteidex/src/utils/folderview/multiindexmodel.cpp index 1c7038691..5c548b099 100644 --- a/liteidex/src/utils/folderview/multiindexmodel.cpp +++ b/liteidex/src/utils/folderview/multiindexmodel.cpp @@ -23,6 +23,8 @@ #include "multiindexmodel.h" +#include + /**************************************************************************** ** ** Copyright (C) 2011 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author Stephen Kelly @@ -156,13 +158,13 @@ void MultiIndexModelPrivate::sort_source_rows(QAbstractItemModel *model, if (source_sort_column >= 0) { if (sort_order == Qt::AscendingOrder) { MultiIndexModelLessThan lt(source_sort_column, source_parent, model, q); - qStableSort(source_rows.begin(), source_rows.end(), lt); + std::stable_sort(source_rows.begin(), source_rows.end(), lt); } else { MultiIndexModelGreaterThan gt(source_sort_column, source_parent, model, q); - qStableSort(source_rows.begin(), source_rows.end(), gt); + std::stable_sort(source_rows.begin(), source_rows.end(), gt); } } else { // restore the source model order - qStableSort(source_rows.begin(), source_rows.end()); + std::stable_sort(source_rows.begin(), source_rows.end()); } } @@ -1050,7 +1052,7 @@ void MultiIndexModelPrivate::_q_sourceRowsInserted(const QModelIndex &parent, in all[i-start] = m->proxy_rows.at(i); //qDebug() << m->sourceModel->index(i,0,parent).data(); } - qStableSort(all); + std::stable_sort(all.begin(), all.end()); if (all.last()-all.first()+1 == all.size()) { q->beginInsertRows(proxyIndex,all.first(),all.last()); diff --git a/liteidex/src/utils/golangapi/golangapi.cpp b/liteidex/src/utils/golangapi/golangapi.cpp index 891b4f45a..b1e351b71 100644 --- a/liteidex/src/utils/golangapi/golangapi.cpp +++ b/liteidex/src/utils/golangapi/golangapi.cpp @@ -22,6 +22,7 @@ // Creator: visualfc #include "golangapi.h" +#include "liteapi/liteqt.h" #include #include #include @@ -50,7 +51,7 @@ bool GolangApi::load(const QString &fileName) return false; } QTextStream stream(&file); - stream.setCodec("utf-8"); + qtSetUtf8Encoding(stream); return loadStream(&stream); } diff --git a/liteidex/src/utils/htmlutil/htmlutil.cpp b/liteidex/src/utils/htmlutil/htmlutil.cpp index 7ac6af14f..57bd4fa87 100644 --- a/liteidex/src/utils/htmlutil/htmlutil.cpp +++ b/liteidex/src/utils/htmlutil/htmlutil.cpp @@ -22,6 +22,7 @@ // Creator: visualfc #include "htmlutil.h" +#include #include #include #include diff --git a/liteidex/src/utils/modelproject/modelprojectimpl.cpp b/liteidex/src/utils/modelproject/modelprojectimpl.cpp index 0b9b89008..ef57c8f3d 100644 --- a/liteidex/src/utils/modelproject/modelprojectimpl.cpp +++ b/liteidex/src/utils/modelproject/modelprojectimpl.cpp @@ -54,7 +54,7 @@ ModelProjectImpl::ModelProjectImpl(LiteApi::IApplication *app) m_tree->setContextMenuPolicy(Qt::CustomContextMenu); QVBoxLayout *layout = new QVBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->addWidget(m_tree); m_widget->setLayout(layout); diff --git a/liteidex/src/utils/processex/processex.cpp b/liteidex/src/utils/processex/processex.cpp index 350bb474a..18ad4708f 100755 --- a/liteidex/src/utils/processex/processex.cpp +++ b/liteidex/src/utils/processex/processex.cpp @@ -92,7 +92,7 @@ ProcessEx::ProcessEx(QObject *parent) connect(this,SIGNAL(stateChanged(QProcess::ProcessState)),this,SLOT(slotStateChanged(QProcess::ProcessState))); connect(this,SIGNAL(readyReadStandardOutput()),this,SLOT(slotReadOutput())); connect(this,SIGNAL(readyReadStandardError()),this,SLOT(slotReadError())); - connect(this,SIGNAL(error(QProcess::ProcessError)),this,SLOT(slotError(QProcess::ProcessError))); + connect(this,SIGNAL(errorOccurred(QProcess::ProcessError)),this,SLOT(slotError(QProcess::ProcessError))); connect(this,SIGNAL(finished(int,QProcess::ExitStatus)),this,SLOT(slotFinished(int,QProcess::ExitStatus))); } @@ -243,10 +243,10 @@ void SendProcessCtrlC(QProcess */*process*/) #else void SendProcessCtrlC(QProcess *process) { - if (process->pid() <= 0) { + if (process->processId() <= 0) { return; } - kill(process->pid(),SIGINT); + kill(process->processId(),SIGINT); } #endif @@ -308,10 +308,10 @@ BOOL CALLBACK sendInterruptMessageToAllWindowsOfProcess_enumWnd(HWND hwnd, LPARA void LiteProcess::interrupt() { if (m_useCtrlC) { - Q_PID processId = this->pid(); + qint64 processId = this->processId(); #ifdef Q_OS_WIN - if (processId) { - EnumWindows(sendInterruptMessageToAllWindowsOfProcess_enumWnd, processId->dwProcessId); + if (processId > 0) { + EnumWindows(sendInterruptMessageToAllWindowsOfProcess_enumWnd, static_cast(processId)); } #else if (processId > 0) { @@ -324,10 +324,10 @@ void LiteProcess::interrupt() void LiteProcess::terminate() { if (m_useCtrlC) { - Q_PID processId = this->pid(); + qint64 processId = this->processId(); #ifdef Q_OS_WIN - if (processId) { - EnumWindows(sendShutDownMessageToAllWindowsOfProcess_enumWnd, processId->dwProcessId); + if (processId > 0) { + EnumWindows(sendShutDownMessageToAllWindowsOfProcess_enumWnd, static_cast(processId)); } #else if (processId > 0) { diff --git a/liteidex/src/utils/tabwidget/litetabwidget.cpp b/liteidex/src/utils/tabwidget/litetabwidget.cpp index b7dffbc1b..d5840a737 100644 --- a/liteidex/src/utils/tabwidget/litetabwidget.cpp +++ b/liteidex/src/utils/tabwidget/litetabwidget.cpp @@ -73,7 +73,7 @@ LiteTabWidget::LiteTabWidget(QSize iconSize, QObject *parent) : // m_closeButton->setDefaultAction(m_closeTabAct); QHBoxLayout *layout = new QHBoxLayout; - layout->setMargin(0); + layout->setContentsMargins(0, 0, 0, 0); layout->setSpacing(0); m_tabBar->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Preferred); @@ -257,5 +257,5 @@ void LiteTabWidget::setCurrentIndex(int index) void LiteTabWidget::tabMoved(int from, int to) { - m_widgetList.swap(from,to); + m_widgetList.swapItemsAt(from, to); } diff --git a/liteidex/src/utils/textoutput/terminaledit.cpp b/liteidex/src/utils/textoutput/terminaledit.cpp index 08585b5c2..93aef4c76 100644 --- a/liteidex/src/utils/textoutput/terminaledit.cpp +++ b/liteidex/src/utils/textoutput/terminaledit.cpp @@ -27,6 +27,7 @@ #include #include #include +#include #include #include #include @@ -120,7 +121,7 @@ void TerminalEdit::append(const QString &text, QTextCharFormat *fmt) { QString str = text; if (m_bFilterTermColor) { - static QRegExp rx("\033\\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]"); + static QRegularExpression rx("\033\\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]"); str.remove(rx); } if (str.isEmpty()) { diff --git a/liteidex/src/utils/textoutput/textoutput.cpp b/liteidex/src/utils/textoutput/textoutput.cpp index 1ec0805a2..afdde043a 100644 --- a/liteidex/src/utils/textoutput/textoutput.cpp +++ b/liteidex/src/utils/textoutput/textoutput.cpp @@ -57,7 +57,7 @@ TextOutput::TextOutput(LiteApi::IApplication *app, bool readOnly, QWidget *paren m_fmt = this->currentCharFormat(); m_defPalette = this->palette(); - m_clrText = m_defPalette.foreground().color(); + m_clrText = m_defPalette.color(QPalette::WindowText); m_clrTag = Qt::darkBlue; m_clrError = Qt::red; m_existsTimer.start(); @@ -144,7 +144,7 @@ void TextOutput::loadColorStyleScheme() if (useColorShceme && text) { if (text->foregound().isValid()) { p.setColor(QPalette::Text,text->foregound()); - p.setColor(QPalette::Foreground, text->foregound()); + p.setColor(QPalette::WindowText, text->foregound()); } if (text->background().isValid()) { p.setColor(QPalette::Base, text->background());