mirror of
https://github.com/mudita/MuditaOS.git
synced 2026-01-06 04:49:04 -05:00
87 lines
1.7 KiB
C++
87 lines
1.7 KiB
C++
// Copyright (c) 2017-2022, Mudita Sp. z.o.o. All rights reserved.
|
|
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
|
|
|
|
#pragma once
|
|
|
|
#include <limits>
|
|
|
|
namespace gui
|
|
{
|
|
namespace text
|
|
{
|
|
constexpr auto npos = std::numeric_limits<unsigned int>::max();
|
|
const char newline = '\n';
|
|
const unsigned int word_detection_range = 10;
|
|
}; // namespace text
|
|
|
|
enum class TextLimitType
|
|
{
|
|
MaxSize,
|
|
MaxLines,
|
|
MaxSignsCount
|
|
};
|
|
|
|
struct TextLimit
|
|
{
|
|
TextLimitType limitType;
|
|
unsigned int limitValue;
|
|
};
|
|
|
|
enum class CursorStartPosition
|
|
{
|
|
DocumentBegin,
|
|
Offset,
|
|
DocumentEnd
|
|
};
|
|
|
|
enum class LinesDrawStop
|
|
{
|
|
None,
|
|
OutOfText,
|
|
OutOfSpace
|
|
};
|
|
|
|
enum class ExpandMode
|
|
{
|
|
Up,
|
|
Down,
|
|
None // default
|
|
};
|
|
|
|
enum class EditMode
|
|
{
|
|
Print, /// <- Text in only printed, no navigation, no scrolling, no cursor visible.
|
|
Browse, /// <- Text is printed with navigation enabled, without edit, scrolling and cursor not visible.
|
|
Scroll, /// <- Text is printed with navigation and scroll enabled, without edit and cursor not visible.
|
|
Edit, /// <- Text is printed with navigation, scroll, cursor visible and edit.
|
|
};
|
|
|
|
enum class TextType
|
|
{
|
|
SingleLine,
|
|
MultiLine
|
|
};
|
|
|
|
enum class TextEllipsis
|
|
{
|
|
Left,
|
|
Right,
|
|
Both,
|
|
None
|
|
};
|
|
|
|
enum class AdditionBound
|
|
{
|
|
CanAddAll,
|
|
CanAddPart,
|
|
CantAdd
|
|
};
|
|
|
|
enum class AdditionType
|
|
{
|
|
perChar,
|
|
perBlock
|
|
};
|
|
|
|
} // namespace gui
|