YSTest  PreAlpha_b500_20140530
The YSLib Test Project
 全部  命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义  
YSLib::UI::TextBox类 参考

文本框。 更多...

#include <TextBox.h>

类 YSLib::UI::TextBox 继承关系图:
YSLib::UI::TextBox 的协作图:

Public 成员函数

 TextBox (const Rect &={}, const Drawing::Font &={}, const pair< Drawing::Color, Drawing::Color > &=FetchGUIState().Colors.GetPair(Styles::Highlight, Styles::HighlightText))
 构造:使用指定边界、字体和高亮背景色/文本色对。 更多...
 
DefDeMoveCtor(TextBox)
TextSelection void 
DrawClippedText (const Graphics &, const Rect &, TextState &) override
 取指定点所在的插入符光标逻辑位置。 更多...
 
void Refresh (PaintEventArgs &&) override
 刷新:按指定参数绘制界面并更新状态。 更多...
 
void ReplaceSelection (const String &)
 替换选中文本。 更多...
 
void PaintDefaultCaret (PaintEventArgs &&)
 绘制默认插入符。 更多...
 
- Public 成员函数 继承自 YSLib::UI::Widget
 Widget (const Rect &={})
 
 Widget (const Rect &, HBrush, Color=Drawing::ColorSpace::Black)
 
template<typename _tView , typename _tRenderer , typename _tController >
 Widget (_tView &&pView_=make_unique< View >(), _tRenderer &&pRenderer_=make_unique< Renderer >(), _tController &&pController_={})
 构造:使用视图指针、渲染器指针和控制器指针,无背景。 更多...
 
 Widget (const Widget &)
 复制构造:除容器指针为空外深复制。 更多...
 
 DefDelMoveCtor (Widget) virtual ~Widget()
 since build 428 更多...
 
 ImplI (IWidget) DefGetter(override
 
 WidgetRange ()) static HBrush MakeBlankBrush()
 取空白画刷。 更多...
 
 ImplI (IWidget) DefGetter(const override
 
AController *controller_ptr DefGetterMem (const ynothrow, SDst, Height, GetView()) ImplI(IWidget) DefGetter(const override
 
AController *controller_ptr
Renderer *renderer_ptr 
ImplI (IWidget) DefGetter(const override
 
AController *controller_ptr
Renderer *renderer_ptr View
*view_ptr 
DefGetterMem (const ynothrow, SDst, Width, GetView()) DefGetterMem(const ynothrow
 
AController *controller_ptr
Renderer *renderer_ptr View
*view_ptr 
GetView ()) DefGetterMem(const ynothrow
 
AController *controller_ptr
Renderer *renderer_ptr View
*view_ptr 
GetView ()) DefSetterMem(SDst
 
AController *controller_ptr
Renderer *renderer_ptr View
*view_ptr 
GetView ()) DefSetterMem(SDst
 
AController *controller_ptr
Renderer *renderer_ptr View
*view_ptr 
GetView ()) DefSetterMem(SDst
 
AController *controller_ptr
Renderer *renderer_ptr View
*view_ptr 
GetView ()) DefSetterMem(SDst
 
AController *controller_ptr
Renderer *renderer_ptr View
*view_ptr 
GetView ()) void SetRenderer(unique_ptr< Renderer >)
 设置渲染器为指定指针指向的对象,同时更新渲染器状态。 更多...
 
void SetView (unique_ptr< View > &&)
 设置渲染器为指定指针指向的对象,同时更新渲染器状态。 更多...
 

静态 Public 成员函数

static bool InvalidateDefaultCaret (IWidget &)
 无效化默认插入符。 更多...
 

Public 属性

TextSelection Selection
 选择区域:结束位置指示插入符光标逻辑位置。 更多...
 
Caret CursorCaret
 插入符光标。 更多...
 
- Public 属性 继承自 YSLib::UI::Widget
HBrush Background
 背景。 更多...
 
Color ForeColor = Drawing::ColorSpace::Black
 默认前景色。 更多...
 
 WidgetRange
 
 Children
 
AController Controller
 
AController *controller_ptr
Renderer 
Renderer
 
AController *controller_ptr
Renderer *renderer_ptr View 
View
 
AController *controller_ptr
Renderer *renderer_ptr View
*view_ptr 
SPos
 
AController *controller_ptr
Renderer *renderer_ptr View
*view_ptr 
X
 
AController *controller_ptr
Renderer *renderer_ptr View
*view_ptr 
Y
 
AController *controller_ptr
Renderer *renderer_ptr View
*view_ptr 
Height
 
AController *controller_ptr
Renderer *renderer_ptr View
*view_ptr 
Width
 

Private 属性

SDst h_offset
 文字区域水平基准负偏移:文本内容在光标回退方向超出的未显示部分大小。 更多...
 

额外继承的成员函数

- Protected 成员函数 继承自 YSLib::UI::Control
 Control (const Rect &, HBrush, Drawing::Color=Drawing::ColorSpace::Black)
 构造:使用指定边界、背景画刷和前景色。 更多...
 
 Control (const Control &)
 复制构造:除容器为空外深复制。 更多...
 
 DefDeMoveCtor (Control) virtual PDefH(IWidget *
 取按键-指针设备输入默认事件组映射。 更多...
 
const KeyInput & ImplRet (nullptr) void OnTouch_Close(CursorEventArgs &&)
 处理屏幕事件:关闭显示。 更多...
 
- Protected 成员函数 继承自 YSLib::UI::MLabel
 MLabel (const Drawing::Font &={}, TextAlignment=TextAlignment::Left)
 构造:使用指定字体。 更多...
 
 DefDeMoveCtor (MLabel) virtual DefDeDtor(MLabel) void DrawText(const Size &
 绘制文本。 更多...
 
- Protected 成员函数 继承自 YSLib::UI::MHilightText
 MHilightText (const Color &bc, const Color &fc)
 
template<class _type >
 MHilightText (const _type &pr)
 
- Protected 属性 继承自 YSLib::UI::Control
 GetBoundControlPtr
 
- Protected 属性 继承自 YSLib::UI::MLabel
Drawing::Font Font
 字体。 更多...
 
Drawing::Padding Margin
 文本和容器的间距。 更多...
 
TextAlignment HorizontalAlignment
 文本水平和竖直对齐属性。 更多...
 
TextAlignment VerticalAlignment
 
bool AutoWrapLine
 启用自动换行。 更多...
 
String Text
 标签文本。 更多...
 
 Color
 
- Protected 属性 继承自 YSLib::UI::MHilightText
Color HilightBackColor
 高亮背景色。 更多...
 
Color HilightTextColor
 高亮文本色。 更多...
 

详细描述

文本框。

参见
Label
自从
build 482
待办事项:

支持选中删除、退格和非字母符号和方向键光标移动。

支持多行模式的插入符光标移动、文本选中和插入。

在文件 TextBox.h128 行定义.

构造及析构函数说明

YSLib::UI::TextBox::TextBox ( const Rect = {},
const Drawing::Font = {},
const pair< Drawing::Color, Drawing::Color > &  = FetchGUIState().Colors.GetPair( Styles::HighlightStyles::HighlightText) 
)
explicit

成员函数说明

void YSLib::UI::TextBox::DrawClippedText ( const Graphics g,
const Rect mask,
TextState ts 
)
overridevirtual
bool YSLib::UI::TextBox::InvalidateDefaultCaret ( IWidget &  wgt)
static

无效化默认插入符。

前置条件
参数对象的动态类型为 TextBox 或其派生类。
参见
Caret::CursorInvalidator
自从
build 484

在文件 TextBox.cpp262 行定义.

参考 YSLib::Drawing::FetchStringWidth(), YSLib::UI::GetSizeOf, YSLib::Drawing::GetVerticalOf(), YSLib::UI::InvalidateVisible() , 以及 YSLib::Drawing::GBinaryGroup< _type >::X.

函数调用图:

void YSLib::UI::TextBox::Refresh ( PaintEventArgs &&  e)
overridevirtual

刷新:按指定参数绘制界面并更新状态。

重载 YSLib::UI::Widget .

在文件 TextBox.cpp256 行定义.

参考 YSLib::Drawing::DrawText(), YSLib::UI::Widget::ForeColor , 以及 YSLib::UI::GetSizeOf.

函数调用图:

void YSLib::UI::TextBox::ReplaceSelection ( const String text)

替换选中文本。

自从
build 490

在文件 TextBox.cpp277 行定义.

参考 YSLib::UI::TextSelection::Collapse, YSLib::Drawing::r, YSLib::UI::TextSelection::Range, Selection, ystdex::swap() , 以及 YSLib::UI::MLabel::Text.

参考自 TextBox().

函数调用图:

这是这个函数的调用关系图:

类成员变量说明

Caret YSLib::UI::TextBox::CursorCaret

插入符光标。

自从
build 484

在文件 TextBox.h151 行定义.

SDst YSLib::UI::TextBox::h_offset
private

文字区域水平基准负偏移:文本内容在光标回退方向超出的未显示部分大小。

自从
build 484

在文件 TextBox.h158 行定义.

参考自 PaintDefaultCaret().

TextSelection YSLib::UI::TextBox::Selection

选择区域:结束位置指示插入符光标逻辑位置。

自从
build 484

在文件 TextBox.h146 行定义.

参考自 DrawClippedText(), PaintDefaultCaret(), ReplaceSelection() , 以及 TextBox().


该类的文档由以下文件生成: