aboutsummaryrefslogtreecommitdiff
path: root/include/cru/platform/graphics/TextLayout.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/cru/platform/graphics/TextLayout.hpp')
-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.