Add syntaxhighlighting to the MessageSourceSheet

This commit is contained in:
Tobias Fella
2021-08-20 23:23:16 +02:00
parent 132c9c50fa
commit 0a39fccec8
3 changed files with 13 additions and 3 deletions

View File

@@ -8,7 +8,7 @@ cmake_minimum_required(VERSION 3.1)
project(NeoChat) project(NeoChat)
set(KF5_MIN_VERSION "5.84.0") set(KF5_MIN_VERSION "5.86.0")
set(QT_MIN_VERSION "5.15.0") set(QT_MIN_VERSION "5.15.0")
find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE) find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE)
@@ -18,6 +18,8 @@ set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake)
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(KDE_COMPILERSETTINGS_LEVEL 5.84)
include(FeatureSummary) include(FeatureSummary)
include(ECMSetupVersion) include(ECMSetupVersion)
include(KDEInstallDirs) include(KDEInstallDirs)
@@ -70,7 +72,7 @@ if(ANDROID)
) )
else() else()
find_package(Qt5 ${QT_MIN_VERSION} COMPONENTS Widgets) find_package(Qt5 ${QT_MIN_VERSION} COMPONENTS Widgets)
find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS QQC2DesktopStyle ConfigWidgets KIO WindowSystem Sonnet) find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS QQC2DesktopStyle ConfigWidgets KIO WindowSystem Sonnet SyntaxHighlighting)
set_package_properties(KF5QQC2DesktopStyle PROPERTIES set_package_properties(KF5QQC2DesktopStyle PROPERTIES
TYPE RUNTIME TYPE RUNTIME
) )

View File

@@ -5,6 +5,7 @@
import QtQuick 2.15 import QtQuick 2.15
import QtQuick.Controls 2.15 import QtQuick.Controls 2.15
import org.kde.syntaxhighlighting 1.0
import org.kde.kirigami 2.15 as Kirigami import org.kde.kirigami 2.15 as Kirigami
Kirigami.OverlaySheet { Kirigami.OverlaySheet {
@@ -16,9 +17,16 @@ Kirigami.OverlaySheet {
} }
TextArea { TextArea {
id: sourceTextArea
text: sourceText text: sourceText
readOnly: true readOnly: true
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
SyntaxHighlighter {
textEdit: sourceTextArea
repository: Repository
definition: "JSON"
}
} }
} }

View File

@@ -60,7 +60,7 @@ if(NOT ANDROID)
endif() endif()
target_include_directories(neochat PRIVATE ${CMAKE_BINARY_DIR}) target_include_directories(neochat PRIVATE ${CMAKE_BINARY_DIR})
target_link_libraries(neochat PRIVATE Qt::Quick Qt::Qml Qt::Gui Qt::Network Qt::QuickControls2 KF5::I18n KF5::Kirigami2 KF5::Notifications KF5::ConfigCore KF5::ConfigGui KF5::CoreAddons Quotient cmark::cmark ${QTKEYCHAIN_LIBRARIES}) target_link_libraries(neochat PRIVATE Qt::Quick Qt::Qml Qt::Gui Qt::Network Qt::QuickControls2 KF5::I18n KF5::Kirigami2 KF5::Notifications KF5::ConfigCore KF5::ConfigGui KF5::CoreAddons KF5::SyntaxHighlighting Quotient cmark::cmark ${QTKEYCHAIN_LIBRARIES})
kconfig_add_kcfg_files(neochat GENERATE_MOC neochatconfig.kcfgc) kconfig_add_kcfg_files(neochat GENERATE_MOC neochatconfig.kcfgc)
if(NEOCHAT_FLATPAK) if(NEOCHAT_FLATPAK)