aboutsummaryrefslogtreecommitdiff
path: root/include/cru/platform/graphics
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2021-11-16 21:02:21 +0800
committercrupest <crupest@outlook.com>2021-11-16 21:02:21 +0800
commit835ec1f25454cd14c5eda45b5bcb614c894fc948 (patch)
tree3b077988ba8ad6d02fc5a9307c90017b49e20e45 /include/cru/platform/graphics
parent59844d990aa72d1f69a3bd30efc94e6d23fa1468 (diff)
downloadcru-835ec1f25454cd14c5eda45b5bcb614c894fc948.tar.gz
cru-835ec1f25454cd14c5eda45b5bcb614c894fc948.tar.bz2
cru-835ec1f25454cd14c5eda45b5bcb614c894fc948.zip
...
Diffstat (limited to 'include/cru/platform/graphics')
-rw-r--r--include/cru/platform/graphics/TextLayout.hpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/cru/platform/graphics/TextLayout.hpp b/include/cru/platform/graphics/TextLayout.hpp
index 5f98696d..d10c9f22 100644
--- a/include/cru/platform/graphics/TextLayout.hpp
+++ b/include/cru/platform/graphics/TextLayout.hpp
@@ -5,6 +5,8 @@
#include <vector>
namespace cru::platform::graphics {
+// Requirement:
+// All text must be left-top aligned.
struct ITextLayout : virtual IGraphicsResource {
virtual String GetText() = 0;
virtual void SetText(String new_text) = 0;
@@ -15,6 +17,9 @@ struct ITextLayout : virtual IGraphicsResource {
virtual void SetMaxWidth(float max_width) = 0;
virtual void SetMaxHeight(float max_height) = 0;
+ virtual bool IsEditMode() = 0;
+ virtual void SetEditMode(bool enable) = 0;
+
virtual Rect GetTextBounds(bool includingTrailingSpace = false) = 0;
virtual std::vector<Rect> TextRangeRect(const TextRange& text_range) = 0;
// Width is always 0, height is line height.