soui
5.0.0.1
Soui5 Doc
Loading...
Searching...
No Matches
SouiLayoutParamStruct.h
1
#ifndef __SOUILAYOUTPARAMSTRUCT__H__
2
#define __SOUILAYOUTPARAMSTRUCT__H__
3
4
#include "SLayoutSize.h"
5
6
#define POSFLAG_REFCENTER '|'
//参考父窗口中心
7
#define POSFLAG_REFPREV_NEAR '['
//参考前一个兄弟窗口与自己近的边
8
#define POSFLAG_REFNEXT_NEAR ']'
//参考下一个兄弟窗口与自己近的边
9
#define POSFLAG_REFPREV_FAR '{'
//参考前一个兄弟窗口与自己远的边
10
#define POSFLAG_REFNEXT_FAR '}'
//参考下一个兄弟窗口与自己远的边
11
#define POSFLAG_PERCENT '%'
//采用在父窗口的百分比定义坐标
12
#define POSFLAG_SIZE '@'
//在pos属性中定义窗口的size,只在在定义x2,y2时有效
13
14
SNSBEGIN
15
16
//坐标类型
17
enum
PIT
18
{
19
20
PIT_NULL = 0,
//无效定义
21
PIT_NORMAL,
//锚点坐标
22
PIT_CENTER,
//参考父窗口中心点,以"|"开始
23
PIT_PERCENT,
//指定在父窗口坐标的中的百分比,以"%"开始
24
PIT_PREV_NEAR,
//参考前一个兄弟窗口与自己近的边,以"["开始
25
PIT_NEXT_NEAR,
//参考下一个兄弟窗口与自己近的边,以"]"开始
26
PIT_PREV_FAR,
//参考前一个兄弟窗口与自己远的边,以"{"开始
27
PIT_NEXT_FAR,
//参考下一个兄弟窗口与自己远的边,以"}"开始
28
PIT_SIZE,
//指定窗口的宽或者高,以"@"开始
29
PIT_SIB_LEFT = 10,
//兄弟结点的left,用于X
30
PIT_SIB_TOP = 10,
//兄弟结点的top,与left相同,用于Y
31
PIT_SIB_RIGHT = 11,
//兄弟结点的right,用于X
32
PIT_SIB_BOTTOM = 11,
//兄弟结点的bottom,与right相同,用于Y
33
};
34
35
struct
POS_INFO
36
{
37
PIT pit;
/**<坐标类型 */
38
int
nRefID;
/**<根据ID引用兄弟窗口时使用的ID,-1代表不参考特定ID的兄弟,使用ID引用的格式为"sib.left@200:10"类似的格式
39
*/
40
bool
bMinus;
/**<定义的值包含"-", 由于-0不能直接做nPos表示,需要一个单独的标志位 */
41
SLayoutSize nPos;
/**<坐标值*/
42
};
43
44
struct
SouiLayoutParamStruct
45
{
46
int
nCount;
/**< 定义的坐标个数 */
47
POS_INFO posLeft, posRight;
/**< 由pos属性定义的值, nCount >0 时有效*/
48
POS_INFO posTop, posBottom;
/**< 由pos属性定义的值, nCount >0 时有效*/
49
50
float
fOffsetX, fOffsetY;
/**< 窗口坐标偏移量, x += fOffsetX * width, y += fOffsetY * height */
51
52
SLayoutSize width;
/**<使用width属性定义的宽 nCount==0 时有效*/
53
SLayoutSize height;
/**<使用height属性定义的高 nCount==0 时有效*/
54
};
55
SNSEND
56
57
#endif
// __SOUILAYOUTPARAMSTRUCT__H__
SOUI
include
layout
SouiLayoutParamStruct.h
Generated by
1.13.2