28 #ifndef YSL_INC_UI_TextBox_h_
29 #define YSL_INC_UI_TextBox_h_ 1
32 #include YFM_YSLib_UI_YControl
33 #include YFM_YSLib_UI_Label
34 #include YFM_YSLib_Service_YTimer
35 #include YFM_YSLib_UI_YGUI
36 #include YFM_YSLib_UI_Animation
101 using Span = pair<Position, Position>;
178 GetCaretPosition(const
Point&);
191 InvalidateDefaultCaret(IWidget&);
202 ReplaceSelection(const
String&);
void Refresh(PaintEventArgs &&) override
刷新:按指定参数绘制界面并更新状态。
static auto first(const _tIterator &i) -> decltype((i->first))
#define DefPred(_q, _n,...)
YF_API GUIState & FetchGUIState()
取默认图形用户界面公共状态。
YF_API void DrawClippedText(const Graphics &g, const Rect &mask, TextState &ts, const String &str, bool line_wrap)
绘制剪切区域的文本。
Color HilightTextColor
高亮文本色。
TextSelection Selection
选择区域:结束位置指示插入符光标逻辑位置。
HBrush CaretBrush
插入符画刷。 484
std::uint16_t SDst
屏幕坐标距离。
InvalidationUpdater::Invalidator CursorInvalidator
供闪烁动画使用的指定无效化区域的光标位置刷新器。
Color HilightBackColor
高亮背景色。
PDefH(void, Activate, Console &console, Drawing::Color fc=Drawing::ColorSpace::White) ImplExpr(Activate(console
激活:使用指定屏幕、有效性、前景色和默认背景色。
YSLib 标准字符串(使用 UCS-2 作为内部编码)。
pair< Position, Position > Span
文本区段:表示起始和结束位置。
#define ynothrow
YSLib 无异常抛出保证:若支持 noexcept 关键字, 指定特定的 noexcept 异常规范。
Styles::Palette Colors
调色板。
TextAlignment HorizontalAlignment
文本水平和竖直对齐属性。
std::function< void(PaintEventArgs &&)> HBrush
画刷回调函数。
Drawing::Padding Margin
文本和容器的间距。
SDst h_offset
文字区域水平基准负偏移:文本内容在光标回退方向超出的未显示部分大小。
std::function< bool(IWidget &)> Invalidator
Selected const shared_ptr< ListType > const pair< Color, Color > & DefDeMoveCtor(TextList) DefPredMem(const ynothrow
static auto second(const _tIterator &i) -> decltype((i->second))
static GAnimationSession< InvalidationUpdater > caret_animation
插入符闪烁动画。
TextAlignment VerticalAlignment