diff options
author | crupest <crupest@outlook.com> | 2020-09-11 11:17:56 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2020-09-11 11:17:56 +0800 |
commit | 93b8a62d28f9427f0979d62b71f12fb2858064ee (patch) | |
tree | 8f77e88a2a48db2a4e9fe72e5c85088f8d659a7f /include/cru/platform | |
parent | 65ca046989cd641da65b754bfa1c99f5e54b219a (diff) | |
download | cru-93b8a62d28f9427f0979d62b71f12fb2858064ee.tar.gz cru-93b8a62d28f9427f0979d62b71f12fb2858064ee.tar.bz2 cru-93b8a62d28f9427f0979d62b71f12fb2858064ee.zip |
...
Diffstat (limited to 'include/cru/platform')
-rw-r--r-- | include/cru/platform/GraphBase.hpp | 2 | ||||
-rw-r--r-- | include/cru/platform/graph/TextLayout.hpp | 1 | ||||
-rw-r--r-- | include/cru/platform/native/Keyboard.hpp | 10 |
3 files changed, 8 insertions, 5 deletions
diff --git a/include/cru/platform/GraphBase.hpp b/include/cru/platform/GraphBase.hpp index e476e3cd..9f3f8393 100644 --- a/include/cru/platform/GraphBase.hpp +++ b/include/cru/platform/GraphBase.hpp @@ -258,6 +258,8 @@ struct TextRange final { gsl::index GetStart() const { return position; } gsl::index GetEnd() const { return position + count; } + void SetEnd(gsl::index new_end) { count = new_end - position; } + TextRange Normalize() const { auto result = *this; if (result.count < 0) { diff --git a/include/cru/platform/graph/TextLayout.hpp b/include/cru/platform/graph/TextLayout.hpp index 7dd20987..a101983f 100644 --- a/include/cru/platform/graph/TextLayout.hpp +++ b/include/cru/platform/graph/TextLayout.hpp @@ -7,6 +7,7 @@ namespace cru::platform::graph { struct ITextLayout : virtual IGraphResource { virtual std::u16string GetText() = 0; + virtual std::u16string_view GetTextView() = 0; virtual void SetText(std::u16string new_text) = 0; virtual std::shared_ptr<IFont> GetFont() = 0; diff --git a/include/cru/platform/native/Keyboard.hpp b/include/cru/platform/native/Keyboard.hpp index 26a1409d..83c61bcc 100644 --- a/include/cru/platform/native/Keyboard.hpp +++ b/include/cru/platform/native/Keyboard.hpp @@ -112,9 +112,9 @@ struct TagKeyModifier {}; using KeyModifier = Bitmask<details::TagKeyModifier>; -namespace key_modifiers { -constexpr KeyModifier shift{0b1}; -constexpr KeyModifier ctrl{0b10}; -constexpr KeyModifier alt{0b100}; -} // namespace key_modifiers +struct KeyModifiers { + static constexpr KeyModifier shift{0b1}; + static constexpr KeyModifier ctrl{0b10}; + static constexpr KeyModifier alt{0b100}; +}; } // namespace cru::platform::native |