Krita Source Code Documentation
Loading...
Searching...
No Matches
SvgTextTool.cpp File Reference
#include "SvgTextTool.h"
#include "KoSvgTextProperties.h"
#include "KoSvgTextShape.h"
#include "KoSvgTextShapeMarkupConverter.h"
#include "SvgCreateTextStrategy.h"
#include "SvgInlineSizeChangeCommand.h"
#include "SvgInlineSizeChangeStrategy.h"
#include "SvgSelectTextStrategy.h"
#include "SvgInlineSizeHelper.h"
#include "SvgMoveTextCommand.h"
#include "SvgMoveTextStrategy.h"
#include "SvgTextChangeCommand.h"
#include "SvgTextEditor.h"
#include "SvgTextRemoveCommand.h"
#include "KoSvgConvertTextTypeCommand.h"
#include "SvgTextShortCuts.h"
#include "SvgTextToolOptionsModel.h"
#include <QPainterPath>
#include <QDesktopServices>
#include <QApplication>
#include <QStyle>
#include <QDockWidget>
#include <QQuickItem>
#include <klocalizedstring.h>
#include <KisPart.h>
#include <kis_canvas2.h>
#include <KSharedConfig>
#include "kis_assert.h"
#include <kis_coordinates_converter.h>
#include <KoFileDialog.h>
#include <KoIcon.h>
#include <KoCanvasBase.h>
#include <KoSelection.h>
#include <KoShapeManager.h>
#include <KoShapeController.h>
#include <KoShapeRegistry.h>
#include <KoShapeFactoryBase.h>
#include <KoPointerEvent.h>
#include <KoProperties.h>
#include <KoSelectedShapesProxy.h>
#include "KoToolManager.h"
#include <KoShapeFillWrapper.h>
#include "KoCanvasResourceProvider.h"
#include <KoPathShape.h>
#include <KoPathSegment.h>
#include <KisResourceModelProvider.h>
#include <KoCssStylePreset.h>
#include <KoSvgTextPropertyData.h>
#include <KoColorBackground.h>
#include <KisResourceModel.h>
#include <KisTextPropertiesManager.h>
#include <KisViewManager.h>
#include <KisQQuickWidget.h>
#include <QQmlError>
#include <KisMainWindow.h>
#include "KisHandlePainterHelper.h"
#include "kis_tool_utils.h"
#include "kis_debug.h"
#include <commands/KoKeepShapesSelectedCommand.h>

Go to the source code of this file.

Functions

static Qt::CursorShape angleToCursor (const QVector2D unit)
 
static bool debugEnabled ()
 Linethickness.
 
static Qt::CursorShape lineToCursor (const QLineF line, const KoCanvasBase *const canvas)
 

Variables

constexpr double INLINE_SIZE_DASHES_PATTERN_A = 4.0
 
constexpr double INLINE_SIZE_DASHES_PATTERN_B = 8.0
 Size of the visible part of the inline-size handle dashes.
 
constexpr int INLINE_SIZE_DASHES_PATTERN_LENGTH = 3
 Size of the hidden part of the inline-size handle dashes.
 
constexpr double INLINE_SIZE_HANDLE_THICKNESS = 1.0
 Total amount of trailing dashes on inline-size handles.
 

Function Documentation

◆ angleToCursor()

static Qt::CursorShape angleToCursor ( const QVector2D unit)
inlinestatic

Definition at line 737 of file SvgTextTool.cpp.

738{
739 constexpr float SIN_PI_8 = 0.382683432;
740 if (unit.y() < SIN_PI_8 && unit.y() > -SIN_PI_8) {
741 return Qt::SizeHorCursor;
742 } else if (unit.x() < SIN_PI_8 && unit.x() > -SIN_PI_8) {
743 return Qt::SizeVerCursor;
744 } else if ((unit.x() > 0 && unit.y() > 0) || (unit.x() < 0 && unit.y() < 0)) {
745 return Qt::SizeFDiagCursor;
746 } else {
747 return Qt::SizeBDiagCursor;
748 }
749}

◆ debugEnabled()

static bool debugEnabled ( )
static

Linethickness.

Definition at line 84 of file SvgTextTool.cpp.

85{
86 static const bool debugEnabled = !qEnvironmentVariableIsEmpty("KRITA_DEBUG_TEXTTOOL");
87 return debugEnabled;
88}
static bool debugEnabled()
Linethickness.

References debugEnabled().

◆ lineToCursor()

static Qt::CursorShape lineToCursor ( const QLineF line,
const KoCanvasBase *const canvas )
inlinestatic

Definition at line 751 of file SvgTextTool.cpp.

752{
753 const KisCanvas2 *const canvas2 = qobject_cast<const KisCanvas2 *>(canvas);
754 KIS_ASSERT(canvas2);
755 const KisCoordinatesConverter *const converter = canvas2->coordinatesConverter();
756 QLineF wdgLine = converter->flakeToWidget(line);
757 return angleToCursor(QVector2D(wdgLine.p2() - wdgLine.p1()).normalized());
758}
static Qt::CursorShape angleToCursor(const QVector2D unit)
KisCoordinatesConverter * coordinatesConverter
_Private::Traits< T >::Result flakeToWidget(const T &obj) const
#define KIS_ASSERT(cond)
Definition kis_assert.h:33

References angleToCursor(), KisCanvas2::coordinatesConverter, KisCoordinatesConverter::flakeToWidget(), and KIS_ASSERT.

Variable Documentation

◆ INLINE_SIZE_DASHES_PATTERN_A

constexpr double INLINE_SIZE_DASHES_PATTERN_A = 4.0
constexpr

Definition at line 78 of file SvgTextTool.cpp.

◆ INLINE_SIZE_DASHES_PATTERN_B

constexpr double INLINE_SIZE_DASHES_PATTERN_B = 8.0
constexpr

Size of the visible part of the inline-size handle dashes.

Definition at line 79 of file SvgTextTool.cpp.

◆ INLINE_SIZE_DASHES_PATTERN_LENGTH

constexpr int INLINE_SIZE_DASHES_PATTERN_LENGTH = 3
constexpr

Size of the hidden part of the inline-size handle dashes.

Definition at line 80 of file SvgTextTool.cpp.

◆ INLINE_SIZE_HANDLE_THICKNESS

constexpr double INLINE_SIZE_HANDLE_THICKNESS = 1.0
constexpr

Total amount of trailing dashes on inline-size handles.

Definition at line 81 of file SvgTextTool.cpp.