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

调整大小的边框。 更多...

#include <Border.h>

YSLib::UI::BorderResizer 的协作图:

Public 类型

using Area = pair< BorderArea, BorderArea >
 区域类型。 更多...
 

Public 成员函数

 BorderResizer (IWidget &wgt, size_t w=4, const Size &min_size={})
 
 DefGetter (const ynothrow, IWidget &, WidgetRef, widget) Area CheckArea(const Point &)
 检查相对于部件点指定区域。 更多...
 

Public 属性

bool HostMode = false
 宿主模式:指定是否在设置边界后同时调整锁定的边界位置。 更多...
 
Drawing::Padding Margin
 
Size MinSize
 指定部件应该保持的最小大小。 更多...
 

Private 成员函数

void Wrap ()
 加载事件。 更多...
 

Private 属性

Point orig_loc {Point::Invalid}
 
Rect locked_bounds {}
 锁定的部件边界。 更多...
 
Area focused {BorderArea::Center, BorderArea::Center}
 
std::reference_wrapper< IWidget > widget
 

详细描述

调整大小的边框。

注解
使用相对于指定部件的坐标系。
自从
build 444

当接触点位于 Margin 指定的边界上时 TouchHeld 使用 SetBoundsOf 按内部状态调整大小 (满足大小不小于MinSize )并引起 Move 和 Resize 事件。

在文件 Border.h111 行定义.

成员类型定义说明

区域类型。

在文件 Border.h115 行定义.

构造及析构函数说明

YSLib::UI::BorderResizer::BorderResizer ( IWidget &  wgt,
size_t  w = 4,
const Size min_size = {} 
)
inline

在文件 Border.h143 行定义.

成员函数说明

YSLib::UI::BorderResizer::DefGetter ( const ynothrow  ,
IWidget &  ,
WidgetRef  ,
widget   
) const

检查相对于部件点指定区域。

类成员变量说明

Area YSLib::UI::BorderResizer::focused {BorderArea::Center, BorderArea::Center}
private

在文件 Border.h125 行定义.

参考自 Wrap().

bool YSLib::UI::BorderResizer::HostMode = false

宿主模式:指定是否在设置边界后同时调整锁定的边界位置。

注解
部件的实际位置需要另行修正。
自从
build 445

在文件 Border.h134 行定义.

参考自 Wrap().

Rect YSLib::UI::BorderResizer::locked_bounds {}
private

锁定的部件边界。

注解
以此为基准调整部件的新的位置和大小。
自从
build 445

在文件 Border.h124 行定义.

参考自 Wrap().

Drawing::Padding YSLib::UI::BorderResizer::Margin
自从
指定边框相对于部件边界以内的范围的边距。

在文件 Border.h136 行定义.

Size YSLib::UI::BorderResizer::MinSize

指定部件应该保持的最小大小。

警告
若小于边框范围(边框重叠)则不保证通过边框调整大小的行为确定。

在文件 Border.h141 行定义.

参考自 Wrap().

Point YSLib::UI::BorderResizer::orig_loc {Point::Invalid}
private

在文件 Border.h118 行定义.

参考自 Wrap().

std::reference_wrapper<IWidget> YSLib::UI::BorderResizer::widget
private

在文件 Border.h126 行定义.

参考自 Wrap().


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