YSTest: YSLib::UI::MTextList类 参考

YSTest PreAlpha_b800_20170810 The YSLib Test Project

- 首页
- 相关页面
- 模块
- 命名空间
- 类
- 文件

- 类列表
- 类索引
- 类继承关系
- 类成员

Public 类型 | Public 成员函数 | Public 属性 | Protected 属性 | 所有成员列表
YSLib::UI::MTextList类 参考
UI » User Interface Models

文本列表模块。 更多...

`#include <ListControl.h>`

类 YSLib::UI::MTextList 继承关系图:
[图例]
YSLib::UI::MTextList 的协作图:
[图例]

## Public 类型

using | ItemType = String
| 项目类型：字符串。 更多...
using | ListType = vector< ItemType >
| 列表类型。 更多...
using | IndexType = typename ListType::size_type
| 索引类型。 更多...
Public 类型 继承自 YSLib::UI::AMUnitControlList
using | ViewArgs = GValueEventArgs< bool >
| 视图参数类型。 更多...

## Public 成员函数

| MTextList (const shared_ptr< ListType > &={})
| 构造：使用文本列表句柄。 更多...
| DefDeMoveCtor (MTextList) DefGetter(const ynothrow
| 取文本列表。 更多...
size_t | GetTotal () const ImplI(AMUnitList)
| 取文本列表引用。 更多...
void | SetList (const shared_ptr< ListType > &)
| 设置文本列表。 更多...
Public 成员函数 继承自 YSLib::UI::AMUnitControlList
| AMUnitControlList (unique_ptr< IWidget >)
| 构造：使用部件指针。 更多...
IWidget & | GetUnitRef () const ImplI(AMUnitList)
void | SetUnit (unique_ptr< IWidget >)
| 设置单元部件。 更多...
WidgetIterator | MakeIterator (size_t)
| 构造共享子部件迭代器。 更多...

## Public 属性

MLabel | LabelBrush {}
const ListType | List
Public 属性 继承自 YSLib::UI::AMUnitControlList
GEvent< void(ViewArgs)> | ViewChanged
| 视图变更事件。 更多...
GEvent< void(IndexEventArgs)> | Selected
| 项目选择状态变更事件。 更多...
GEvent< void(IndexEventArgs)> | Confirmed
| 项目选中确认事件。 更多...
GEvent< void(size_t)> | Iterated
| 迭代器迭代事件。 更多...

## Protected 属性

shared_ptr< ListType > | hList
| 文本列表句柄。 更多...
Protected 属性 继承自 YSLib::UI::AMUnitList
SequenceViewer | vwList {}
| 列表视图。 更多...
SDst | uTopOffset = 0
| 列表视图首项目超出上边界的竖直偏移量。 更多...
size_t | idxShared = size_t(-1)
| SDst
| TopOffset

## 额外继承的成员函数

Protected 成员函数 继承自 YSLib::UI::AMUnitList
virtual SDst | GetItemHeightCore () const
| 取默认行高：实现。 更多...
virtual | DefDeDtor (AMUnitList) bool CyclicTraverse
| 循环选择遍历。 更多...
SDst | GetFullViewHeight () const
| 取完整视图高。 更多...
SDst | GetItemHeight () const
| 取项目行高：调用 GetItemHeightCore 取结果。 更多...
size_t | GetLastLabelIndexClipped (SPos, SDst) const
| DefGetter (const ynothrow, size_t, SharedIndex, idxShared) DefGetter(const ynothrow
uTopOffset | DeclIEntry (size_t GetTotal() const) DeclIEntry(IWidget &GetUnitRef() const ) Point GetUnitLocation(size_t) const
| 取单元总数。 更多...
SDst | GetViewPosition () const
| 取视图顶端竖直位置。 更多...
SDst | AdjustBottomForHeight (SDst, SDst)
| 调整列表视图底项目（可能不完全）超出下边界以上的竖直偏移量为零。 更多...
SDst | AdjustOffsetForHeight (SDst, bool)
| 调整列表视图底项目的竖直偏移量为零。 更多...
void | AdjustViewForContent (SDst)
| 按内容大小依次调整视图中选中和首个项目的索引，然后按需调整竖直偏移量。 更多...
void | AdjustViewLengthForHeight (SDst, SDst)
| 根据指定的单元部件的高和视图可视区域的高调整视图长度。 更多...
size_t | CheckPoint (const Size &, const Point &)
| 检查点（相对左上角）是否在选择范围内， 更多...
void | ResetView ()
| 复位视图。 更多...

## 详细描述

文本列表模块。

自从
  build 188

在文件 ListControl.h 第 138 行定义.

## 成员类型定义说明

using YSLib::UI::MTextList::IndexType = typename ListType::size_type

索引类型。

在文件 ListControl.h 第 143 行定义.

using YSLib::UI::MTextList::ItemType = String

项目类型：字符串。

在文件 ListControl.h 第 141 行定义.

using YSLib::UI::MTextList::ListType = vector<ItemType>

列表类型。

在文件 ListControl.h 第 142 行定义.

## 构造及析构函数说明

YSLib::UI::MTextList::MTextList | ( | const shared_ptr< ListType > & | h = `{}` | ) |

explicit

构造：使用文本列表句柄。

注解
  当文本列表指针为空时新建。

自从
  build 527

在文件 ListControl.cpp 第 79 行定义.

参考 YSLib::UI::AMUnitList::GetItemHeight(), GetTotal(), YSLib::UI::AMUnitControlList::GetUnitRef(), YSLib::UI::AMUnitControlList::Iterated, LabelBrush, YSLib::UI::MLabel::Margin, ystdex::ref(), YSLib::UI::MLabel::Text , 以及 YSLib::YAssert().

函数调用图:

## 成员函数说明

YSLib::UI::MTextList::DefDeMoveCtor | ( | MTextList |  | ) | const

取文本列表。

自从
  build 392

size_t YSLib::UI::MTextList::GetTotal | ( |  | ) | const

取文本列表引用。

自从
  build 392

取项目行高：由字体和行距决定。

注解
  实现：断言：结果非空。

自从
  build 581
  build 586

在文件 ListControl.cpp 第 104 行定义.

参考自 MTextList().

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

void YSLib::UI::MTextList::SetList | ( | const shared_ptr< ListType > & | h | ) |

设置文本列表。

注解
  若参数为空则忽略。

自从
  build 292

在文件 ListControl.cpp 第 110 行定义.

参考 hList , 以及 YB_LIKELY.

## 类成员变量说明

shared_ptr<ListType> YSLib::UI::MTextList::hList

mutableprotected

文本列表句柄。

在文件 ListControl.h 第 146 行定义.

参考自 SetList().

MLabel YSLib::UI::MTextList::LabelBrush {}

自从
  build 529

在文件 ListControl.h 第 150 行定义.

参考自 YSLib::UI::TreeList::GetIndentBox(), YSLib::UI::Menu::Menu(), MTextList(), YSLib::UI::ResizeForContent(), YSLib::UI::TextList::TextList() , 以及 YSLib::UI::TreeList::TreeList().

const ListType YSLib::UI::MTextList::List

在文件 ListControl.h 第 165 行定义.

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

- ListControl.h
- ListControl.cpp