diff --git a/plugins/tools/svgtexttool/CMakeLists.txt b/plugins/tools/svgtexttool/CMakeLists.txt index b4bc3ce993..1312e716f5 100644 --- a/plugins/tools/svgtexttool/CMakeLists.txt +++ b/plugins/tools/svgtexttool/CMakeLists.txt @@ -1,30 +1,31 @@ project(SvgTextTool) set(CMAKE_AUTORCC ON) set (SvgTextTool_SRCS BasicXMLSyntaxHighlighter.cpp Plugin.cpp SvgTextChangeCommand.cpp + SvgRichTextCtrl.cpp SvgTextEditor.cpp SvgTextTool.cpp SvgTextToolFactory.cpp svgtexttool.qrc kis_font_family_combo_box.cpp FontSizeAction.cpp ) ki18n_wrap_ui(SvgTextTool_SRCS WdgSvgTextEditor.ui WdgSvgTextSettings.ui ) install( FILES SvgTextTool.action DESTINATION ${DATA_INSTALL_DIR}/krita/actions ) add_library(krita_tool_svgtext MODULE ${SvgTextTool_SRCS}) target_link_libraries(krita_tool_svgtext kritaui KF5::I18n) install(TARGETS krita_tool_svgtext DESTINATION ${KRITA_PLUGIN_INSTALL_DIR}) diff --git a/plugins/tools/svgtexttool/SvgRichTextCtrl.cpp b/plugins/tools/svgtexttool/SvgRichTextCtrl.cpp new file mode 100644 index 0000000000..c5c3e4c455 --- /dev/null +++ b/plugins/tools/svgtexttool/SvgRichTextCtrl.cpp @@ -0,0 +1,17 @@ +#include "SvgRichTextCtrl.h" +#include + +SvgRichTextCtrl::SvgRichTextCtrl(QWidget* parent /*= nullptr*/) +: QTextEdit(parent) +{ +} + +void SvgRichTextCtrl::insertFromMimeData(const QMimeData *source) +{ + if (!source->hasHtml() && source->hasText()) { + QTextCursor cursor = textCursor(); + cursor.insertText(source->text()); + } else { + QTextEdit::insertFromMimeData(source); + } +} diff --git a/plugins/tools/svgtexttool/SvgRichTextCtrl.h b/plugins/tools/svgtexttool/SvgRichTextCtrl.h new file mode 100644 index 0000000000..889c4d89ea --- /dev/null +++ b/plugins/tools/svgtexttool/SvgRichTextCtrl.h @@ -0,0 +1,15 @@ +#ifndef SVGRICHTEXTCTRL_H +#define SVGRICHTEXTCTRL_H + +#include + +class SvgRichTextCtrl : public QTextEdit +{ +public: + SvgRichTextCtrl(QWidget* parent = nullptr); + +protected: + void insertFromMimeData(const QMimeData* source) override; +}; + +#endif // SVGRICHTEXTCTRL_H diff --git a/plugins/tools/svgtexttool/WdgSvgTextEditor.ui b/plugins/tools/svgtexttool/WdgSvgTextEditor.ui index 156b3af9ae..124a10005a 100644 --- a/plugins/tools/svgtexttool/WdgSvgTextEditor.ui +++ b/plugins/tools/svgtexttool/WdgSvgTextEditor.ui @@ -1,94 +1,101 @@ WdgSvgTextEditor 0 0 520 530 0 true Rich text - + SVG source - 0 + 1 SVG false Styles Vertical Text Layout QDialogButtonBox::Cancel|QDialogButtonBox::Save + + + SvgRichTextCtrl + QTextEdit +
SvgRichTextCtrl.h
+
+