summaryrefslogtreecommitdiffstats
path: root/src/libnrtype/Layout-TNG.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libnrtype/Layout-TNG.cpp')
-rw-r--r--src/libnrtype/Layout-TNG.cpp48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/libnrtype/Layout-TNG.cpp b/src/libnrtype/Layout-TNG.cpp
new file mode 100644
index 0000000..96d805d
--- /dev/null
+++ b/src/libnrtype/Layout-TNG.cpp
@@ -0,0 +1,48 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+/*
+ * Inkscape::Text::Layout - text layout engine misc
+ *
+ * Authors:
+ * Richard Hughes <cyreve@users.sf.net>
+ *
+ * Copyright (C) 2005 Richard Hughes
+ *
+ * Released under GNU GPL v2+, read the file 'COPYING' for more information.
+ */
+#include "Layout-TNG.h"
+
+namespace Inkscape {
+namespace Text {
+
+const gunichar Layout::UNICODE_SOFT_HYPHEN = 0x00AD;
+const double Layout::LINE_HEIGHT_NORMAL = 1.25;
+
+Layout::Layout() = default;
+
+Layout::~Layout()
+{
+ clear();
+}
+
+void Layout::clear()
+{
+ _clearInputObjects();
+ _clearOutputObjects();
+
+ textLength._set = false;
+ textLengthMultiplier = 1;
+ textLengthIncrement = 0;
+ lengthAdjust = LENGTHADJUST_SPACING;
+}
+
+bool Layout::_directions_are_orthogonal(Direction d1, Direction d2)
+{
+ if (d1 == BOTTOM_TO_TOP) d1 = TOP_TO_BOTTOM;
+ if (d2 == BOTTOM_TO_TOP) d2 = TOP_TO_BOTTOM;
+ if (d1 == RIGHT_TO_LEFT) d1 = LEFT_TO_RIGHT;
+ if (d2 == RIGHT_TO_LEFT) d2 = LEFT_TO_RIGHT;
+ return d1 != d2;
+}
+
+}//namespace Text
+}//namespace Inkscape