CBlueUI  
C++ 跨平台跨框架的数据可视化工具
载入中...
搜索中...
未找到
BUI 命名空间参考

命名空间

namespace  UtilsFont

class  ActionKeyboardMap
 键盘按键事件映射表。最多只支持同时按下四个键。在实际交互场景下,过多的按键组合,不利于软件交互。 更多...
class  ActionList
 事件任务列表 更多...
struct  ActionTable
 鼠标按键事件映射表。 更多...
class  AdapterPlatformGLFW
class  AdapterPlatformGTK
class  AdapterPlatformGTKmm
class  AdapterPlatformQt
class  AdapterPlatformSDL2
class  AdapterPlatformWin
class  AdapterPlatformWxWidgets
struct  Arrow
struct  ArrowPoint
struct  BoundRect
struct  CarouselItem
class  CAutoMoveContainUI
 有布局功能的移动特效容器类 更多...
class  CBinaryBoxUI
class  CBrushGradientSet
 普通,高亮,选中,禁用四种状态下渐变画刷的封装类 更多...
class  CButtonImageUI
 切图按钮(普通,高亮,选中,禁用四种状态)横排和竖排皆可,顺序打乱也可以。 结合实际开发经验,开发和美工属于不同的部门,虽然两个部门都有规范,但是人员流动带来的变动导致规范无法成型。此类支持美工任意切图。 更多...
class  CButtonMenuUI
 菜单按钮 更多...
class  CButtonNodeUI
 组合复杂的按钮 更多...
class  CButtonPolygonUI
 正多边形按钮,支持渐变 更多...
class  CButtonSVGUI
 SVG图标按钮 更多...
class  CButtonSwitchImageUI
 开关按钮控件,支持两种状态 更多...
class  CButtonSysUI
 系统按钮 更多...
class  CButtonTextureUI
 纹理按钮,支持渐变,和纹理图案 更多...
class  CButtonUI
 按钮 更多...
class  CCarouselUI
class  CChartAxis
 坐标轴基础信息基类(单坐标轴也是一种坐标系,线性坐标系) 更多...
class  CChartCoordinate
 空坐标系。也就是标准的窗口坐标模式 更多...
class  CChartDataLabel
 元素标签文本 更多...
class  CChartEleAttitudeIndicator
 飞控姿态表盘(AttitudeIndicator) 更多...
class  CChartEleBoxPlot
 盒子图元素 更多...
class  CChartEleCandles
 蜡烛图 更多...
class  CChartEleCircleNet
 关系图形 更多...
class  CChartEleCorssLine
 跨越标线 更多...
class  CChartEleHeatmap
 点热力图形 更多...
class  CChartEleLegendBox
 CChartEleLegendBox图例容器 更多...
class  CChartElement
 图表图形接口 更多...
class  CChartElementImage
 图标图形 更多...
class  CChartEleMeterArc
 表盘图形 更多...
class  CChartEleMeterPin
 表针图形 更多...
class  CChartEleNotes
 注释类文本(由两个点决定) 更多...
class  CChartElePath
 路径图形 更多...
class  CChartElePathGeo
 地理路径图形(经纬度坐标, x = 维度, y = 精度) 更多...
class  CChartElePathText
 文本路径图形 更多...
class  CChartElePie
 饼图扇形图形 更多...
class  CChartElePoint
 点图形 更多...
class  CChartElePointHeat
 点热力图形 更多...
class  CChartEleRangeBar
 柱状图形或环状条形 更多...
class  CChartEleRect
 矩形图形 更多...
class  CChartEleScatter
 散点图形 更多...
class  CChartEleScatterBorder
 散点边框图形 更多...
class  CChartEleText
 文本图形 更多...
class  CChartEleTextLinearAxis
 坐标轴上的文本图形 更多...
class  CChartEleTree
 树节点图形 更多...
class  CChartEleWaterDroplet
 水滴图形 更多...
class  CChartSeries
 图表序列 更多...
class  CChartSeriesAttachLine
 图元数据以挂靠方式存储的图表序列。提供灵活开发者接口 更多...
class  CChartSeriesBufferLine
 单存线条 更多...
class  CChartSeriesContain
 通用基础的图表序列,可装载任意元素 更多...
class  CChartSeriesDoubleBufferLine
 双缓存线条 更多...
class  CChartSeriesGraph
 环形关系图 更多...
class  CChartSeriesLine
 线条序列 更多...
class  CChartSeriesLineErrorBar
 单一ErrorBar线条 更多...
class  CChartSeriesLineInterpolation
 插值曲线:支持双击加入控制点,移动控制点。对于任意点x,求出插值y。 更多...
class  CChartSeriesLinePoints
 线条序列 更多...
class  CChartSeriesTree
 树状图形序列 更多...
class  CChartViewUI
 图表类控件。负责的绘制数据序列 更多...
class  CCheckBoxCell
 带有checkbox功能的单元格 更多...
class  CCheckBoxUI
 复选框 更多...
class  CColorBarUI
 渐变颜色控件 更多...
class  CColorPickerUI
 颜色拾取器 更多...
class  CComboBaseUI
 下拉控件基类,下拉弹出窗口采用单例模式。减少对窗口资源的消耗 更多...
class  CComboColorPickerUI
 颜色拾取器 更多...
class  CComboDateRangeUI
 范围选择框 更多...
class  CComboDateUI
 日期下拉框 更多...
class  CComboListUI
 普通下拉列表 更多...
class  CContainerUI
 无布局功能的容器类,控件的位置全靠用户的绝对位置来确定。改变控件位置,需要开发者控制。 更多...
class  CContainLayoutUI
 有布局功能的容器类 更多...
class  CContainMenuUI
class  CContainOptionUI
class  CContainScrollSyncUI
class  CContainTabUI
 标签页的容器 更多...
class  CContainTitleUI
class  CControlUI
 控件基类 更多...
class  CCoordinateAffine
 笛卡尔坐标系 更多...
class  CCoordinateAffine3d
 笛卡尔3D坐标系 更多...
class  CCoordinateAffineTrans
 更加灵活的仿射坐标系 更多...
class  CCoordinateAxisSketchTrans
 坐标轴缩略图转换器 更多...
class  CCoordinateGeo
 GEO坐标系 更多...
class  CCustomComboxUI
 用户自定义的下拉控件 更多...
class  CDateTimeUI
 日期时间控件 更多...
class  CDateUI
 日期控件 更多...
class  CDigitLcdUI
 液晶数字控件 更多...
class  CEditCombinationUI
 辑输入组合体 更多...
class  CEditFrameUI
 位置信息编辑操作 更多...
class  CEditGPSLocationUI
 经纬度(GPS)输入框 更多...
class  CEditIPAddressUI
 IP地址输入框 更多...
class  CEditKeyBoardUI
 快捷键输入框 更多...
class  CEditLine
 行编辑类 更多...
class  CEditLineStyle
 编辑框外观信息 更多...
class  CEditList
 编辑输入组合体容器 更多...
class  CEditRichUI
 多行文本输入框(自主设计自绘,未使用系统原生编辑输入框,可方便移植到嵌入式平台) 更多...
class  CEditSpinBoxUI
 步长输入框 更多...
class  CEditTextUI
 单行文本输入框(自主设计自绘,未使用系统原生编辑输入框,可方便移植到嵌入式平台) 更多...
class  CGIFViewUI
 gif格式动画控件 更多...
class  CGlobalFunction
 控件垃圾回收机制,生命周期检测。自行释放已经游离的对象 更多...
class  CGradientColorPickerUI
 渐变颜色拾取器 更多...
struct  CharSize
struct  CharStyle
class  ChartDataPoint
 图表数据点 更多...
class  CheckBoxMode
 复选框状态属性 更多...
class  CImageViewListUI
 图片轮播控件 更多...
class  CImageViewUI
 图片视图控件 更多...
class  CIndicatorLightUI
 状态指示灯。采用多个渐变组合而成。开发者可自由灵活定制。 更多...
class  CircleAxis
 圆坐标系。(x,y)=(角度:-180~180,半径的百分比(0~100)) 更多...
class  CkeyboardStatck
class  CLabelMultiStyleUI
 HTML风格的标签控件 更多...
class  CLabelUI
 普通标签控件 更多...
class  CLanguageTranslator
 语言翻译类 更多...
class  CLayoutArrowContainUI
 带箭头风格,有布局功能的容器类 更多...
class  CLayoutBase
 布局信息基类 更多...
class  CLayoutBox
 盒子布局容器类. 水平盒子: 水平计算布局对象 垂直盒子: 垂直计算布局对象 层叠盒子: Z方向计算方式,所有对象共享区域 更多...
class  CLayoutCircle
 圆形布局对象 更多...
class  CLayoutControl
 UI控件布局对象 更多...
class  CLayoutControlAdsorb
 UI控件吸附布局对象 更多...
class  CLayoutGrid
 网格布局 更多...
class  CLayoutNodeData
 UI控件布局对象 更多...
class  CLayoutSpacer
 弹性占位布局对象 更多...
class  CLineArrowUI
 跨越式箭头控件 更多...
class  CLineUI
 线条控件 更多...
class  ClipBoxSurface
class  CListBoxUI
 列表控件 更多...
class  CLottieUI
 Lottie 动画控件。并不支持全部的lottie特性和复杂特效 更多...
class  CManagerHandler
 事件过滤器(可安装到控件上,截获需要处理的消息) 更多...
class  CManagerSkin
 皮肤管理类 更多...
class  CMemoryAlloc
 内存管理 更多...
class  CNodeCell
 普通单元格 更多...
class  CNodeData
 可视化的数据结构,包含数据交互和绘制功能 更多...
class  CNodeDataBarOfPercent
class  CNodeDataColor
class  CNodeDataControl
 包含控件的可视化节点 更多...
class  CNodeDataDate
class  CNodeDataDateTime
class  CNodeDataDouble
class  CNodeDataDoubleQuote
class  CNodeDataEnum
class  CNodeDataEnumText
class  CNodeDataIconPrefix
class  CNodeDataImage
 图片节点 更多...
class  CNodeDataImageFunc
class  CNodeDataImageGradient
class  CNodeDataImageQuote
 引用类型的图标 更多...
class  CNodeDataInt
class  CNodeDataIntQuote
class  CNodeDataLegendLine
 线条标记 更多...
class  CNodeDataLegendMark
 mark标记 更多...
class  CNodeDataLists
 可视化节点列表,包含xyz三个方向的布局。 更多...
class  CNodeDataListUI
 NodeData容器 更多...
class  CNodeDataSolidColor
 实色图形 更多...
class  CNodeDataText
class  CNodeDataTextAlign
class  CNodeDataTextGradient
class  CNodeDataTextGradientQuote
class  CNodeDataTextLayoutQuote
 class CNodeDataTextLayoutQuote 更多...
class  CNodeDataTextQuote
class  CNodeEditorUI
 节点可视化(用于图布局和组态控制) 更多...
class  CNodeHtmlTextData
 HTML文本 更多...
class  CNodeSpanCell
 跨越多行或者多列的单元格 更多...
class  CNumberValue
struct  ConnectEdge
struct  ConnectPoint
struct  ConstBufferShader0
struct  ConstBufferShader1
class  COptionUI
class  CPaginationUI
class  CPopControlUI
class  CPopupMenuEx
class  CProgressBarUI
 进度条 更多...
class  CResourceFont
class  CResourceGraphics
 图形相关资源存储类 更多...
class  CScrollAreaUI
 带有内置滚动条的控件。 更多...
class  CScrollBarUI
 滚动条控件 更多...
class  CSelectState
class  CSettingInfo
 配置读写类(支持json,xml格式)且读取方式更灵活 更多...
class  CSkinStyle
 提取单个皮肤文件中的风格信息 更多...
class  CSliderUI
class  CSortContainer
 排序功能和属性的封装 更多...
class  CSplineBezier
 三次贝塞尔样条曲线。支持输入x,得出唯一的y值。常用于参数控制。这不同于通用样条曲线,同一个x可能存在多个Y值 更多...
class  CSplitBarUI
class  CStaticMarkUI
 mark标记 更多...
class  CTableViewUI
 表格控件 更多...
class  CTextLayout
 图标和文本布局工具类 更多...
class  CThemeMgr
 主题属性管理 更多...
class  CThreadPool
 跨平台线程池 更多...
class  CTipBoxUI
 文本提示器 更多...
class  CToastBox
class  CTreeListUI
 树状列表 更多...
class  CTreeModelNode
class  CTreeRowCell
class  CTreeTableViewUI
 树状表格 更多...
class  CTreeViewModel
 树状控件模型 更多...
class  CView3dUI
 3D视图控件 更多...
class  CWidgetQt
class  DataRangeHelper
 数据范围计算 更多...
class  DebugLoger
 打印到调试输出窗口 更多...
struct  DrawBarInfo
class  DynamicLibrary
 插件功能函数提取类 更多...
struct  ElementLayout
class  FileReader
 文件读取-工具类 更多...
class  FileWriter
 文件写入-工具类 更多...
class  FileWriterShare
 File Writer Share 更多...
struct  FontFile
union  FourCode
class  GAnimateBezierEasing
 动画缓动函数。 更多...
class  GAnimateProperty
 动画基础属性 更多...
class  GAnimatePropertyValue
 数值动画模板。使用时同样先调用UpdateTimeLine(t)。未调用的情况下,值不会发生变换,自然也无法实现动画效果 更多...
class  GAnimateTransform
 动画变换矩阵 1.使用时提前调用UpdateTimeLine(t),更新动画。 2.再获取动画的变换矩阵。调用GetTransform2d 更多...
class  GAnimateTransformVector
 动画矩阵变换容器 更多...
class  GBrush
 颜色画笔 更多...
class  GBrushArray
 四种状态的画刷集合(普通,高亮,选中,禁用) 更多...
class  GBrushGradient
 渐变画刷由渐变方式和渐变颜色两部分组成 更多...
class  GBrushGradientConic
 圆周渐变画刷 更多...
class  GBrushGradientLinear
 线性渐变画刷 更多...
class  GBrushGradientRadial
 中心放射渐变画刷 更多...
class  GCamera
 3D图形渲染之观察者 更多...
class  GFont
 字体 更多...
class  GImage
 class GImage 更多...
class  GImageGIF
class  GImageIconInfo
 包含多种状态(常规,鼠标悬停,鼠标按下,禁用)的图标 更多...
class  GImageIconMulti
 多个状态得图像,分布在不同的图片文件中 更多...
class  GImageIconSingle
 多个状态得图像,分布在相同的图片文件中 更多...
class  GPathBigPointStorage
class  GPathBufferStorage
class  GPathEllipseStorage
class  GPathLinesStorage
class  GPathRectStorage
class  GPathStorage
 路径顶点源(在GPathStorage的世界里,椭圆,弧线,样条曲线都是由足够细腻的直线拟合的) 更多...
class  GPenInfo
class  GPoint
 二维平面上的点(long) 更多...
class  GPointF
class  GradientColors
 渐变的渲染颜色 更多...
class  GradientLinearColors
 双值线性颜色表 更多...
class  GradientLinearPhaseColors
 相位颜色表 更多...
class  GradientLinearSegmentColors
 双值线性颜色表(具有起点百分比) 更多...
class  GradientRoundRect
class  GradientStopsColors
 自定义位置线性颜色表 更多...
class  GRect
 矩形(int) 更多...
struct  GShaderInfo
 着色器信息 更多...
struct  GShaderLayoutDesc
 顶点布局格式描述结构 更多...
class  GShadowContain
class  GStyleLine
 线条样式 更多...
class  GStyleMarkShape
 标记类节点样式 更多...
class  GSurface
 实现图形接口 更多...
class  GSurfacePainter
 平台相关的绘制 更多...
class  GSurfacePainterCocoa
class  GSurfacePainterGTK
class  GSurfacePainterGTKmm
class  GSurfacePainterQt
class  GSurfacePainterSDL2
class  GSurfacePainterWin
class  GSurfacePainterWxWidgets
class  GSurfaceQt
class  GSvgBase
class  GSvgGradient
class  GSvgModel
class  GSvgPaintStyle
class  GSvgRenderer
class  GSvgShape
 SVG 图形基础类 更多...
class  GSvgShapeCircle
 圆形 更多...
class  GSvgShapeEllipse
 椭圆 更多...
class  GSvgShapeGroup
 SVG组(g)元素 更多...
class  GSvgShapeImage
 SVG Image 更多...
class  GSvgShapeLine
 SVG Line 更多...
class  GSvgShapePath
 SVG Path 更多...
class  GSvgShapeRect
 SVG Rect 更多...
class  GSvgShapeStyle
class  GSvgShapeText
 SVG TextPath 更多...
class  GSvgShapeTextPath
 SVG TextPath 更多...
struct  GTextureInfo
class  GVectorF
 二维向量 更多...
struct  HtmlItemDataStyle
class  IActionNotify
class  IAdapterPlatform
 IAdapterPlatform 平台适配器基类 更多...
class  ICommitTarget
 对象之间传递数据的提交操作。比如表格单元格编辑后,更新到指定的单元格数据对象。按钮点击后关闭下拉窗口等 更多...
class  IControlUI
 控件UI基类 更多...
class  ICoordList
 坐标系接口 更多...
class  IDockHandler
class  IDockOverlayHandler
 dock层叠窗口 更多...
class  IEventHandler
class  IGIFHost
class  ILayout
 布局基类 更多...
struct  ImageStyle
class  IManageHandler
 窗口事件管理控制者 更多...
class  INodeData
 数据节点元素基类 更多...
class  INotifyHandler
class  ISurface
 图形接口 更多...
class  IWidgetQt
class  IXSlotBase
 信号槽基类 更多...
class  LabelItem
struct  LayoutLinkNode
struct  LayoutSize
class  LayoutValue
class  LinearAxis
 线性坐标轴 +-----------—+=================+------------—+ m_data_min m_show_min m_show_max m_data_max 更多...
struct  LineStyle
struct  LinkActionNode
struct  LinkPtr
class  LoggerStorage
 日志存储 更多...
class  MatchFeatures
 匹配信息类 更多...
class  MouseDragHelper
 鼠标拖拽 更多...
class  MouseHitStatus
 矩形状态-工具类 更多...
class  ParallelAxis
 平行坐标系 更多...
struct  ParseSetting
class  PathTransform
 路径中点的变换运算类 更多...
class  PathTransformAffine
 二维矩阵变换 更多...
class  PathTransformMatFloat4x4
 三维空间矩阵变换 更多...
struct  PathTransInfo
struct  PopManagerData
class  PopWindowManager
class  RadarAxis
 极坐标系,也称雷达坐标系 更多...
struct  Render3dData
struct  ScrollRect
struct  ShadowInfo
struct  SortData
 排序数据 更多...
class  ST_Policy
 信号槽管理策略,当槽对象释放时,绑定关系自动删除 更多...
class  StateRow
 状态转移表 更多...
class  StateTransfer
 状态转移器 更多...
class  SyntaxStyles
 语法渲染风格 更多...
class  TableHeaderNodeCell
 表头的单元格 更多...
class  TableRow
 表格行 更多...
class  TernaryAxis
 三元组坐标系 更多...
struct  TransAlongDoublePath
struct  TransAlongSinglePath
class  Transform2d
 二维变换矩阵(简洁形式),在后续UI建模中会经常用到计算位置 [sx , shx, tx] [x] 更多...
class  Transform2dLineSegment
 Rotate, Scale and Translate, associating 0...dist with line segment x1,y1,x2,y2 更多...
class  Transform2dReflection
 Reflection matrix. Reflect coordinates across the line through the origin at the angle a or containing the non-unit vector (x, y). Contributed by John Horigan 更多...
class  Transform2dReflectionUnit
 Reflection matrix. Reflect coordinates across the line through the origin containing the unit vector (ux, uy). Contributed by John Horigan 更多...
class  Transform2dRotation
class  Transform2dScaling
 Scaling matrix. x, y - scale coefficients by X and Y respectively 更多...
class  Transform2dSkewing
 Sckewing (shear) matrix 更多...
class  Transform2dTranslation
 Translation matrix 更多...
class  Transform2dTransposer
 Transform2dTransposer = Transform2d(0, 1.0, 1.0, 0, 0, 0) 更多...
struct  TransformGradient
struct  TransmitDataObject
class  UIManager
 控件UI管理器,负责消息转发和定位 更多...
class  UIManagerPopDropdown
 下拉弹出框管理对象 更多...
class  UIPopupMenuManager
struct  UISystemStartUp
 全局初始化对象,此对象的生命周期需要与执行程序相同 更多...
struct  UnDoRecord
struct  ValuePack
 值包装器 更多...
struct  vertex_base_type
class  VisibleProperty
class  WindowDockingManager
class  WindowPlatform
struct  WordWrapLineInfo
struct  WParamAddNodeData
class  WxWidgetsGLCanvas
class  XmlBuilder
 UI构建工具类 更多...
class  XMLItemA
class  XMLItemW
class  XmlStorageA
 xml文件储存类。xml文件中大量重复标签,采用共享字符串的方式,减少内存占用 更多...
class  XmlStorageW
 xml文件储存类。xml文件中大量重复标签,采用共享字符串的方式,减少内存占用 更多...

类型定义

typedef GPoint GVector
typedef XMLItemA XMLItem
typedef XmlStorageA XmlStorage
typedef uint16_t IndexBufType
 顶点索引缓冲区类。可自行定义为'#define IndexBufType unsigned int'
typedef uint8_t UnifomBufType
 常量缓冲区类型。可自行定义为'#define UnifomBufType uint8_t'
typedef float VertexBufType
 顶点缓冲区类型。可自行定义为'#define VertexBufType unsigned int'
typedef struct BUI::Arrow ArrowHead
typedef struct BUI::Arrow ArrowTail
typedef vertex_base_type< int > vertex_base_i
typedef vertex_base_type< float > vertex_base_f
typedef vertex_base_type< double > vertex_base_d
typedef void(* LPTranformText) (BasicStringBuffer &buf, double va)
 用于转换坐标轴文本映射的函数指针
typedef void(* LPTranformValue) (double &va)
typedef short size_type_width
typedef std::function< GImageIconInfo *()> GetGImageIconInfoFunc
typedef std::function< GColor()> GetTextUserColorFunc
typedef std::function< int()> GetIntFunc
typedef CControlUI *(* CreateControl_cb) (const TCHAR *typeName, const TCHAR *desClassName, const TCHAR *class_name)

枚举

enum  LayoutFlags { ForceResetLayout = 1 << 0 }
enum  UIManagerFlag { UIManagerFlag_WhenBuildIgnoreLayout = 1 << 0 }
 控件扩展属性标志位 更多...
enum  DragStateFlag { DRAG_NULL , DRAG_BEGIN , DRAG_MOVING , DRAG_END }
enum  CNumberType {
  value_px , value_percent , value_em , value_rem ,
  value_vw , value_vh , value_vmin , value_vmax ,
  value_ch , value_ex , value_cm , value_mm ,
  value_in , value_pt , value_pc
}
enum  LogLevel {
  LogLevel_TRACE , LogLevel_DEBUG , LogLevel_INFO , LogLevel_WARN ,
  LogLevel_ERROR , LogLevel_FATAL
}
enum  LogOutputType { LogToConsole = 1 << 0 , LogToFile = 1 << 1 }
enum  GDataType {
  DT_INT8 , DT_UINT8 , DT_INT16 , DT_UINT16 ,
  DT_INT32 , DT_UINT32 , DT_FLOAT , DT_DOUBLE
}
 用于定义顶点布局中数据类型 更多...
enum  GBufferType { BT_VERTEX = 1 , BT_INDEX , BT_CONST }
enum  GCullFace { CullNone = 0 , CullBack , CullFront }
enum  GVertexMode {
  DrawPoints = 0 , DrawLines , DrawLineStrip , DrawTriangles ,
  DrawTriangleStrip
}
enum  CalcMode { discrete = 0 , linear , spline }
enum  BrushStyle { GRADIENT_UNKNOWN , GRADIENT_LINEAR , GRADIENT_RADIAL , GRADIENT_CONIC }
enum  LineMode { LM_NO_Line , LM_Step , LM_Line , LM_Spline }
enum  TypeMarkShape {
  MS_NO_MARK = 0 , MS_TRIANGLE , MS_TRIANGLE_DOWM , MS_TRIANGLE_LEFT ,
  MS_TRIANGLE_RIGHT , MS_RECT , MS_CIRCLE , MS_DIAMOND ,
  MS_CROSS , MS_STAR
}
enum  LineCapStyle { BUTT = 0 , ROUND , SQUARE }
enum  ImageRatioStyle { meet_style , slice_style , none_style }
enum  SurfaceFillRule { ModeNonZero = 0 , ModeEvenOdd = 1 }
enum  svg_align {
  xMinYMin , xMinYMid , xMinYMax , xMidYMin ,
  xMidYMid , xMidYMax , xMaxYMin , xMaxYMid ,
  xMaxYMax
}
enum  svg_preserve_aspect_ratio { meet , slice , none }
enum  svg_text_align { start , middle , end }
enum  FONT_SIZE_LEVEL {
  FLS_LEVEL_0 = 0x01 , FLS_LEVEL_0_LOW , FLS_LEVEL_1 , FLS_LEVEL_2 ,
  FLS_LEVEL_2_LOW , FLS_LEVEL_3 , FLS_LEVEL_4 , FLS_LEVEL_4_LOW ,
  FLS_LEVEL_5 , FLS_LEVEL_5_LOW , FLS_LEVEL_6 , FLS_LEVEL_7
}
enum  CoordinateType { Undefined , Cartesian , Polar }
enum  AxisValueTransModel { CoordinateValue , CoordinateArea }
enum  WeightValueTransModel {
  WeightFixed , WeightWidthPercentage , WeightHeightPercentage , WeightAxis1 ,
  WeightAxis2
}
enum  CChartCoordinateFlags { CoordFlags_DisableDragMove = 1 << 0 }
enum  AxisLayoutType { MINIMUM_AXIS_VALUE , MAXIMUM_AXIS_VALUE , AXIS_VALUE }
enum  RadarStyle { RA_Polar , RA_Radar }
enum  MeterPinDrawType { MPDT_LINE , MPDT_TRIANGLE }
 表针形状 更多...
enum  MOVE_MODE { AM_LEFT , AM_MID , AM_RIGHT }
enum  DragMode { DragAnywhere , DragCaption , DragDisable }
enum  ContainerFlag {
  Contain_mainContain = 1 << 0 , Contain_showCaption = 1 << 1 , Contain_adaptCaptionHeight = 1 << 2 , Contain_showExpand = 1 << 3 ,
  Contain_UpdateView = 1 << 4 , Contain_EnableChangeSize = 1 << 5 , Contain_IsZoom = 1 << 6 , Contain_EnableZoom = 1 << 7 ,
  Contain_ShowCloseBtn = 1 << 8 , Contain_ShowScrollBar = 1 << 9 , Contain_DragMoveWidget = 1 << 10 , Contain_bkImgFullFill = 1 << 11 ,
  Contain_ShowGridStandard = 1 << 12 , Contain_ShowGridBlock = 1 << 13 , Contain_GroupLineStyle = 1 << 14 , Contain_HideAfterDelay = 1 << 15 ,
  Contain_DrawLayoutBorder = 1 << 16
}
enum  BoxHitState {
  HT_COL_HEILIGHT , HT_COL_DRAG , HT_LIST_ROW , HT_NC_NONE ,
  HT_ROW_CHECKBOX , HT_ROW_FOLD
}
enum  GridFillMode { FillNull = 0 , FillRow , FillCol , FillCell }
enum  GridLineMode { GridLineNone = 0x00 , GridLineX = 0x01 , GridLineY = 0x02 , GridLineBorder = 0x04 }
enum  ControlFlag : uint64_t {
  ControlFlag_StaticState = 1ULL << 0 , ControlFlag_AllowFocusWhenClick = 1ULL << 1 , ControlFlag_AllowCaptureMouseWhenClick = 1ULL << 2 , ControlFlag_MouseHoverState = 1ULL << 3 ,
  ControlFlag_FocusState = 1ULL << 4 , ControlFlag_ContainFocusState = 1ULL << 5 , ControlFlag_MouseLButtonDownState = 1ULL << 6 , ControlFlag_MouseHitTestReset = 1ULL << 7 ,
  ControlFlag_AutoScrollHorEnd = 1ULL << 8 , ControlFlag_AutoScrollVerEnd = 1ULL << 9 , ControlFlag_Animating = 1ULL << 10 , ControlFlag_UseClipZoom = 1ULL << 11 ,
  ControlFlag_NoDrawClip = 1ULL << 12 , ControlFlag_Delegater = 1ULL << 13 , ControlFlag_DelegaterLinkState = 1ULL << 14 , ControlFlag_SupportTabKey = 1ULL << 15 ,
  ControlFlag_FixedInView = 1ULL << 16 , ControlFlag_OnlyMoveInParent = 1ULL << 17 , ControlFlag_ZOverSpeedup = 1ULL << 18 , ControlFlag_AutoSeatLayout = 1ULL << 19 ,
  ControlFlag_ShowMarginOnCaptureMouse = 1ULL << 20 , ControlFlag_ShowMarginOnFocus = 1ULL << 21 , ControlFlag_MarginState = 1ULL << 22 , ControlFlag_MoveDraggingState = 1ULL << 23 ,
  ControlFlag_InterScrollState = 1ULL << 24 , ControlFlag_StorageUserSetting = 1ULL << 25 , ControlFlag_RoundRadiusDrawLine = 1ULL << 26 , ControlFlag_RoundRadiusParl = 1ULL << 27 ,
  ControlFlag_HideWndWhenClick = 1ULL << 28 , ControlFlag_HideWhenLeave = 1ULL << 29 , ControlFlag_HideWhenCommited = 1ULL << 30 , ControlFlag_HideWhenFocusLost = 1ULL << 31 ,
  ControlFlag_HideTopContainWhenTrigger = 1ULL << 32 , ControlFlag_TabKeyFocus = 1ULL << 33 , ControlFlag_ForceLayoutWhenSizeChange = 1ULL << 34 , ControlFlag_TopMostWhenClick = 1ULL << 35 ,
  ControlFlag_UseParentFillText = 1ULL << 36 , ControlFlag_UseParentStroke = 1ULL << 37 , ControlFlag_DisableTheme = 1ULL << 38 , ControlFlag_DisableThemeChild = 1ULL << 39 ,
  ControlFlag_TextChanged = 1ULL << 40 , ControlFlag_FontChanged = 1ULL << 41 , ControlFlag_PopupProperties = 1ULL << 42 , ControlFlag_DoNotTriggerEvents = 1ULL << 43 ,
  ControlFlag_RefreshByParent = 1ULL << 44 , ControlFlag_DPI_Changed = 1ULL << 45 , ControlFlag_DPI_AdaptForce = 1ULL << 46 , ControlFlag_Animate = 1ULL << 47 ,
  ControlFlag_AnimatePause = 1ULL << 48 , ControlFlag_3D_GL = 1ULL << 49
}
 控件属性标志位 更多...
enum  DateTimeFlag { NotSelectableWeekDay = 1 << 0 , NotSelectableFutureDay = 1 << 1 , ShowLunar = 1 << 2 , SelectRangeMode = 1 << 2 }
enum  InputTextFlags {
  InputFlags_None = 0 , InputFlags_CharsDecimal = 1 << 0 , InputFlags_CharsOctal = 1 << 1 , InputFlags_CharsHexadecimal = 1 << 2 ,
  InputFlags_CharsBinary = 1 << 3 , InputFlags_CharsUppercase = 1 << 4 , InputFlags_CharsNoBlank = 1 << 5 , InputFlags_CharsScientific = 1 << 6 ,
  InputFlags_Password = 1 << 7 , InputFlags_ReadOnly = 1 << 8 , InputFlags_WantReturn = 1 << 9 , InputFlags_Multiline = 1 << 10 ,
  InputFlags_Wordwarp = 1 << 11 , InputFlags_NO_Modification = 1 << 12 , InputFlags_CheckValueRange = 1 << 13 , InputFlags_Undo = 1 << 14 ,
  InputFlags_ConsoleModel = 1 << 15 , InputFlags_TextChange = 1 << 16 , InputFlags_ShowLineNumber = 1 << 17 , InputFlags_ShowLineMark = 1 << 18 ,
  InputFlags_ShowPercentBar = 1 << 19 , InputFlags_RemoveLastZero = 1 << 20
}
 编辑框属性标志 更多...
enum  EditSpinBtnSide { LeftSide , RightSide , BothSide }
enum  MATCH_TYPE { MT_NONE , MT_NUM , MT_TEXT , MT_ENUM }
enum  OrderByType { OrderByASC , OrderByDESC , OrderByNONE }
enum  DataType { DataNum , DataFloat , DataText }
enum  MatchMask { zero_match = 0x00 , search_mask_shift = 1 , default_mask_shift = 1 << 1 }
enum  TreeViewModelFlags { TVMF_ShowCheckBox = 1 << 0 , TVMF_ExpandBtnTriStyle = 1 << 1 , TVMF_ShowTreeLineStyle = 1 << 2 , TVMF_TreeNodeMovable = 1 << 3 }
 树状控件模型属性标志 更多...

函数

UI_EXP void InstallLanguageTranslator (CLanguageTranslator *lang_trans)
 安装语言管理对象
UI_EXP CLanguageTranslatorLanguageTranslator ()
 获得语言管理对象
UI_EXP BOOL LangTranslateToBeString (BeString &out_text, LPCTSTR text, BOOL init=FALSE)
UI_EXP BOOL LangTranslate (BeString &outstr, LPCTSTR text)
UI_EXP void ParseLayoutModel (LPCTSTR text, int *wl, int *hl, LayoutMode *mw, LayoutMode *mh)
UI_EXP void InstallSetingInfo (CSettingInfo *config)
 安装全局配置信息对象
UI_EXP CSettingInfoGetCSettingInfo ()
 获得全局配置信息对象
UI_EXP int AddShader (int id, const char *source_vs, const char *source_ps, GShaderLayoutDesc *layout, int len)
 添加全局着色器
UI_EXP int GenShaderID ()
 生成一个ID
UI_EXP int ShaderCount ()
 获得指定着色器个数
UI_EXP bool IsShaderChange ()
 着色器是否有变更
UI_EXP void SetShaderChange (bool is_change)
 设置着色器变更标志位
UI_EXP GShaderInfoGetShaderInfo (int pos)
 获得指定着色器信息
UI_EXP int AddTexture (int id, BUI::GImage *img)
 添加全局纹理。目标是创建GPU侧的内部纹理对象
UI_EXP void DelTexture (int id)
 删除指定纹理
UI_EXP int GenTextureID ()
 生成一个ID
UI_EXP int TextureCount ()
 获得指定纹理个数
UI_EXP bool IsTextureChange ()
 纹理是否有变更
UI_EXP void SetTextureChange (bool is_change)
 设置纹理变更标志位
UI_EXP GTextureInfoGetTextureInfo (int pos)
 获得指定纹理信息
UI_EXP BOOL Load3dObj (std::vector< std::shared_ptr< Render3dData > > &out_data, const char *filename_utf8, const char *mtl_dir=NULL)
 加载obj 3d文件
UI_EXP void InstallResourceGraphics (CResourceGraphics *res)
 安装资源管理对象
UI_EXP CResourceGraphicsResourceGraphics ()
 获得资源管理对象
UI_EXP int AddFontFile (const char *name, const char *file_path)
 添加全局字体文件。
UI_EXP void DelFontFile (const char *name)
 删除指定字体文件
UI_EXP int FontFileCount ()
 获得指定字体文件个数
UI_EXP bool IsFontFileChange ()
 字体文件是否有变更
UI_EXP void SetFontFileChange (bool is_change)
 设置字体文件变更标志位
UI_EXP FontFileGetFontFile (int pos)
 获得pos索引的字体文件信息
std::shared_ptr< GAnimatePropertyValue< float > > ParserAnimValue (XMLItem *node)
 单值属性动画
std::shared_ptr< GAnimatePropertyValue< VecFloat4 > > ParserAnimColor (XMLItem *node)
 颜色和四种分量动画
UI_EXP void CalcLinearGradientTransform (float x1, float y1, float x2, float y2, TransformGradient &mtx, float gradient_d2=100.0)
UI_EXP void CalcRadialGradientTransform (float cx, float cy, float fx, float fy, float r, float angle, TransformGradient &mtx, float gradient_d2=100.0)
UI_EXP void RotationGradientTransform (Transform2d &mtx, float dx, float dy)
UI_EXP void stbi_convert_rgba_premultiplied (unsigned char *data, int channel_r, int channel_g, int channel_b, int alpha_channel, unsigned int x, unsigned int y, unsigned int stride)
GPathStorage operator* (GPathStorage &path, float factor)
GPathStorage operator+ (GPathStorage &path1, GPathStorage &path2)
GPathStorage operator- (GPathStorage &path1, GPathStorage &path2)
UI_EXP void ShellTextGlyphEffect (TransAlongSinglePath &ge, const BeString &str_name, const BeString &str_value)
GColor svg_parse_color (const char *str)
std::string svg_get_url_name (const char *str)
float svg_parse_unit_value (const char *str)
XMLItemAsvg_find_use_by_id (XMLItemA *parent, const char *id, int count)
bool svg_is_numeric (char c)
unsigned svg_parse_transform_args (const char *str, double *args, unsigned max_na, unsigned *na)
void svg_parse_transform (Transform2d &transform, const char *str)
std::shared_ptr< GAnimatePropertyValue< float > > SvgParserAnimValue (XMLItemA *node)
std::shared_ptr< GAnimatePropertyValue< VecFloat4 > > SvgParserAnimColor (XMLItemA *node)
std::shared_ptr< GAnimatePropertyValue< GPathStorage > > SvgParserAnimPath (XMLItemA *node)
std::shared_ptr< GAnimatePropertyValue< GPathStorage > > SvgParserAnimPoints (XMLItemA *node, BOOL is_close)
UI_EXP void InstallGCManager (CGlobalFunction *gc)
 安装控件垃圾处理对象
UI_EXP CGlobalFunctionGCManager ()
 获得控件垃圾处理对象
UI_EXP void UpdateSkin (CManagerSkin &skin_mgr, CControlUI *ui)
 将皮肤信息应用到控件中
UI_EXP void UpdateSkinByStyleName (CSkinStyle &skin, CControlUI *ui, BOOL recursive_child=FALSE)
 更新指定控件皮肤。常用于数据展示类型的定制化
UI_EXP void InstallResourceFont (CResourceFont *font_mgr)
 安装字体管理对象
UI_EXP CResourceFontResourceFont ()
 获得字体管理对象
UI_EXP int InitializeUISystem (UISystemStartUp *gc)
 初始化UI系统,并启动服务
UI_EXP UISystemStartUpGetUISystem ()
 获得UI全局系统对象
UI_EXP void SetMouseTracePoint (POINT pt)
 设置鼠标的跟踪的起点位置,该位置用来计算当前位置,与跟踪位置的距离
UI_EXP void SetRealRenderMode (BOOL is_enable)
 是否开启实时渲染模式(默认关闭)
UI_EXP BOOL GetRealRenderMode ()
 获得实时渲染使能状态
UI_EXP POINT GetMouseTracePoint ()
 获得跟踪标记的位置
UI_EXP CThemeMgrThemeCurrent ()
 获得当前应用的主题
UI_EXP void ApplyCurrentTheme ()
 将所有控件主题切换到当前主题. e.g. 在此方法之前需要调用ThemeCurrent()->LoadFile("..."); 加载主题文件
UI_EXP CkeyboardStatckKeyboardInput ()
 获得全局键盘输入
UI_EXP ActionKeyboardMapKeyboardActionMap ()
 获得键盘事件映射管理对象。负责处理键盘事件响应
UI_EXP LPCTSTR AppCurrentDir ()
 获得当前应用的执行目录
UI_EXP void InstallToastBox (CToastBox *toast_box)
 安装全局信息弹出控件
UI_EXP CToastBoxToastBox ()
 获得消息提示框
UI_EXP void EnableGlobalGrayscaleMode (int gray_type)
 开启全局灰度模式
UI_EXP int GetGlobalGrayscaleMode ()
 获得全局灰度模式。默认有7中算法
UI_EXP void InstallPopWindowManager (PopWindowManager *popwin)
 安装弹窗管理对象
UI_EXP PopWindowManagerGetPopWindowManager ()
 获得弹窗管理对象
void getPointsFunction (void *info, const CGPathElement *element)
UI_EXP void LoadTTF (const TCHAR *file)
UI_EXP void InstallWindowDockingManager (WindowDockingManager *font_mgr)
UI_EXP WindowDockingManagerGetWindowDockingManager ()
UI_EXP CControlUICreateControl (const TCHAR *class_name, IManageHandler *manager, LPCTSTR name, LPCTSTR text, CControlUI *parent, RECT rc, UINT num_id, UINT style)
 根据读取的XML信息创建控件
UI_EXP void InitItemState (ItemState &state)
bool CompareValueLong (SortData &v1, SortData &v2)
bool CompareValueDouble (SortData &v1, SortData &v2)
bool CompareValueText (SortData &v1, SortData &v2)
bool CompareValueTextNoCase (SortData &v1, SortData &v2)
UI_EXP CNodeDataCreateNodeData (const TCHAR *type_name, const TCHAR *des_class_name, const TCHAR *class_name)
 Create a Node Data object

类型定义说明

◆ ArrowHead

typedef struct BUI::Arrow BUI::ArrowHead

◆ ArrowTail

typedef struct BUI::Arrow BUI::ArrowTail

◆ CreateControl_cb

typedef CControlUI *(* BUI::CreateControl_cb) (const TCHAR *typeName, const TCHAR *desClassName, const TCHAR *class_name)

◆ GetGImageIconInfoFunc

typedef std::function<GImageIconInfo*()> BUI::GetGImageIconInfoFunc

◆ GetIntFunc

typedef std::function<int()> BUI::GetIntFunc

◆ GetTextUserColorFunc

typedef std::function<GColor()> BUI::GetTextUserColorFunc

◆ GVector

◆ IndexBufType

typedef uint16_t BUI::IndexBufType

顶点索引缓冲区类。可自行定义为'#define IndexBufType unsigned int'

◆ LPTranformText

typedef void(* BUI::LPTranformText) (BasicStringBuffer &buf, double va)

用于转换坐标轴文本映射的函数指针

◆ LPTranformValue

typedef void(* BUI::LPTranformValue) (double &va)

◆ size_type_width

typedef short BUI::size_type_width

◆ UnifomBufType

typedef uint8_t BUI::UnifomBufType

常量缓冲区类型。可自行定义为'#define UnifomBufType uint8_t'

◆ vertex_base_d

typedef vertex_base_type<double> BUI::vertex_base_d

◆ vertex_base_f

typedef vertex_base_type<float> BUI::vertex_base_f

◆ vertex_base_i

typedef vertex_base_type<int> BUI::vertex_base_i

◆ VertexBufType

typedef float BUI::VertexBufType

顶点缓冲区类型。可自行定义为'#define VertexBufType unsigned int'

◆ XMLItem

◆ XmlStorage

枚举类型说明

◆ AxisLayoutType

枚举值
MINIMUM_AXIS_VALUE 
MAXIMUM_AXIS_VALUE 
AXIS_VALUE 

◆ AxisValueTransModel

枚举值
CoordinateValue 

以坐标值计算

CoordinateArea 

以坐标视区百分比计算

◆ BoxHitState

枚举值
HT_COL_HEILIGHT 
HT_COL_DRAG 
HT_LIST_ROW 
HT_NC_NONE 
HT_ROW_CHECKBOX 
HT_ROW_FOLD 

◆ BrushStyle

枚举值
GRADIENT_UNKNOWN 
GRADIENT_LINEAR 
GRADIENT_RADIAL 
GRADIENT_CONIC 

◆ CalcMode

枚举值
discrete 
linear 
spline 

◆ CChartCoordinateFlags

枚举值
CoordFlags_DisableDragMove 

◆ CNumberType

枚举值
value_px 

像素点

value_percent 

百分比

value_em 

相对父元素的大小

value_rem 

相对根元素的大小

value_vw 

视口宽度百分比

value_vh 

视口高度百分比

value_vmin 

视口宽度和高度的最小值的百分比

value_vmax 

视口宽度和高度的最大值的百分比

value_ch 

字符宽度。基于数字0

value_ex 

字符宽度。基于小写字母x

value_cm 

厘米

value_mm 

毫米

value_in 

英寸。1 英寸等于 2.54 厘米。

value_pt 

打印点,1 pt 等于 1/72 英寸。

value_pc 

1pc 等于 12 点(pt)

◆ ContainerFlag

枚举值
Contain_mainContain 

主容器

Contain_showCaption 

是否显示标题栏,标题栏具有双击展开,显示文本的功能

Contain_adaptCaptionHeight 

根据文本高度,自适应标题栏。此时标题栏高度=m_caption_height+字体高度

Contain_showExpand 

是否显示标题栏折叠按钮

Contain_UpdateView 

更新视窗滚动范围

Contain_EnableChangeSize 

是否可以从右下角调整自身大小

Contain_IsZoom 

是否最小化

Contain_EnableZoom 

最大最小化功能是否可用

Contain_ShowCloseBtn 

展示关闭按钮

Contain_ShowScrollBar 

是否显示滚动条

Contain_DragMoveWidget 

鼠标按下拖动窗口标识

Contain_bkImgFullFill 

背景图片全覆盖填充

Contain_ShowGridStandard 

显示水平垂直的标准化网格线

Contain_ShowGridBlock 

显示网格间隔填充模式

Contain_GroupLineStyle 

静态分组线样式

Contain_HideAfterDelay 

在一段延时之后隐藏自己

Contain_DrawLayoutBorder 

绘制布局边框

◆ ControlFlag

enum BUI::ControlFlag : uint64_t

控件属性标志位

枚举值
ControlFlag_StaticState 

设置控件进入静默状态.静默状态和禁用状态一样,不会响应消息

ControlFlag_AllowFocusWhenClick 

用户左键允许获得键盘焦点

ControlFlag_AllowCaptureMouseWhenClick 

用户左键允许捕捉鼠标焦点

ControlFlag_MouseHoverState 

鼠标是否悬停在控件内

ControlFlag_FocusState 

控件已经获得焦点

ControlFlag_ContainFocusState 

开启容器焦点状态,默认不开启

ControlFlag_MouseLButtonDownState 

鼠标左键按下

ControlFlag_MouseHitTestReset 

鼠标命中被重置,需要重新计算

ControlFlag_AutoScrollHorEnd 

水平滚动条自动滚动到最后

ControlFlag_AutoScrollVerEnd 

垂直滚动条自动滚动到最后

ControlFlag_Animating 

正在动画显示

ControlFlag_UseClipZoom 

使用用户限制视区.内部使用,不可设置

ControlFlag_NoDrawClip 

禁用裁减

ControlFlag_Delegater 

开启托管ui

ControlFlag_DelegaterLinkState 

是否已被加入到托管链表中

ControlFlag_SupportTabKey 

支持tab键

ControlFlag_FixedInView 

当控件位置变化时,是否将父控件的m_point_origin参与计算,也就是当为true时 固定到视区下,如滚动条控件

ControlFlag_OnlyMoveInParent 

仅在父控件视窗边界下移动

ControlFlag_ZOverSpeedup 

开启order覆盖过滤,提高速度.开启之后,如果控件被兄弟节点遮盖,将不会进行多余的绘制图形操作。

ControlFlag_AutoSeatLayout 

控件占位标志,为true代表控件可视状态变化时,布局位置不改变。为false代表,其他控件补位

ControlFlag_ShowMarginOnCaptureMouse 

显示外边距,当捕获鼠标时

ControlFlag_ShowMarginOnFocus 

显示外边距,当捕获焦点时

ControlFlag_MarginState 

外边距显示状态,内部使用,不可设置

ControlFlag_MoveDraggingState 

拖拽状态标志位

ControlFlag_InterScrollState 

内建滚动条,标志着控件和父控件的生命周期相同。不可单独强制释放

ControlFlag_StorageUserSetting 

存储用户的配置信息

ControlFlag_RoundRadiusDrawLine 

圆角以线条方式,非弧形过度

ControlFlag_RoundRadiusParl 

圆角以偏移方式,非弧形过度

ControlFlag_HideWndWhenClick 

当click up时,隐藏窗口

ControlFlag_HideWhenLeave 

当鼠标离开时时,隐藏控件

ControlFlag_HideWhenCommited 

在提交完成后自动隐藏控件

ControlFlag_HideWhenFocusLost 

在失去焦点后自动隐藏控件

ControlFlag_HideTopContainWhenTrigger 

在状态事件触发后自动隐藏控件

ControlFlag_TabKeyFocus 

tab focus

ControlFlag_ForceLayoutWhenSizeChange 

在理想情况下。控件大小不变时,包含的子布局也不变。但是在特殊情况时,有时子布局的可见性由外部变量的状态决定 ForceLayout参数在窗口不变时,同样触发重新布局的事件

ControlFlag_TopMostWhenClick 

点击容器或者容器内的子控件时,将自己置顶。

ControlFlag_UseParentFillText 

使用父控件的文本颜色

ControlFlag_UseParentStroke 

使用父控件的边框颜色

ControlFlag_DisableTheme 

当主题变化时,控件颜色值不更新,由开发者决定,目的是为了保持切换主题时,一些不变的元素

ControlFlag_DisableThemeChild 

当主题变化时,子控件颜色值不更新,由开发者决定,目的是为了保持切换主题时,一些不变的元素

ControlFlag_TextChanged 

文本被改变标志位

ControlFlag_FontChanged 

字体被改变标志位

ControlFlag_PopupProperties 

具有弹出属性,管理者根据此属性,自动管理弹出控件的焦点

ControlFlag_DoNotTriggerEvents 

不触发绑定的动作事件

ControlFlag_RefreshByParent 

控件刷新区域指定为父节点的区域。可以使得组合控件更加合理刷新

ControlFlag_DPI_Changed 

控件dpi缩放变更状态

ControlFlag_DPI_AdaptForce 

对于个别特殊控件,需要加入强制自适应DPI属性

ControlFlag_Animate 

包含动画的控件

ControlFlag_AnimatePause 

动画暂停标志位

ControlFlag_3D_GL 

三维控件-标志位

◆ CoordinateType

枚举值
Undefined 

未定义类型

Cartesian 

笛卡尔图(线性坐标轴类型)

Polar 

极坐标图(雷达)

◆ DataType

枚举值
DataNum 

整数

DataFloat 

浮点数

DataText 

文本

◆ DateTimeFlag

枚举值
NotSelectableWeekDay 
NotSelectableFutureDay 
ShowLunar 
SelectRangeMode 

◆ DragMode

枚举值
DragAnywhere 

无论何时都可以拖拽

DragCaption 

仅当标题栏可以拖拽

DragDisable 

不可拖拽

◆ DragStateFlag

枚举值
DRAG_NULL 
DRAG_BEGIN 
DRAG_MOVING 
DRAG_END 

◆ EditSpinBtnSide

枚举值
LeftSide 

操作按钮在左侧

RightSide 

操作按钮在右侧

BothSide 

操作按钮在两侧

◆ FONT_SIZE_LEVEL

枚举值
FLS_LEVEL_0 
FLS_LEVEL_0_LOW 
FLS_LEVEL_1 
FLS_LEVEL_2 
FLS_LEVEL_2_LOW 
FLS_LEVEL_3 
FLS_LEVEL_4 
FLS_LEVEL_4_LOW 
FLS_LEVEL_5 
FLS_LEVEL_5_LOW 
FLS_LEVEL_6 
FLS_LEVEL_7 

◆ GBufferType

枚举值
BT_VERTEX 
BT_INDEX 
BT_CONST 

◆ GCullFace

枚举值
CullNone 

无背面剔除 (默认)

CullBack 

背面剔除

CullFront 

背面剔除。在directx,opengl,vk统一定义逆时针为正面

◆ GDataType

用于定义顶点布局中数据类型

枚举值
DT_INT8 
DT_UINT8 
DT_INT16 
DT_UINT16 
DT_INT32 
DT_UINT32 
DT_FLOAT 
DT_DOUBLE 

◆ GridFillMode

枚举值
FillNull 
FillRow 
FillCol 
FillCell 

◆ GridLineMode

枚举值
GridLineNone 
GridLineX 
GridLineY 
GridLineBorder 

◆ GVertexMode

枚举值
DrawPoints 

每个顶点绘制一个点

DrawLines 

每两个顶点组成一条独立的线段

DrawLineStrip 

顶点连续连接,组成折线

DrawTriangles 

每三个顶点组成一个独立三角形

DrawTriangleStrip 

顶点按带状连接,组成一系列共边三角形

◆ ImageRatioStyle

枚举值
meet_style 
slice_style 
none_style 

◆ InputTextFlags

编辑框属性标志

枚举值
InputFlags_None 

None

InputFlags_CharsDecimal 

Allow 0123456789+-

InputFlags_CharsOctal 

Allow 01234567

InputFlags_CharsHexadecimal 

Allow 0123456789ABCDEFabcdef

InputFlags_CharsBinary 

Allow 01

InputFlags_CharsUppercase 

Turn a..z into A..Z

InputFlags_CharsNoBlank 

Filter out spaces, tabs

InputFlags_CharsScientific 

Allow 0123456789.+-*‍/eE (Scientific notation input)

InputFlags_Password 

Password mode Allow ascii

InputFlags_ReadOnly 

Read-only mode

InputFlags_WantReturn 

Occurs when the input event ends. sendmessage [MSG_TEXT_RETURN]

InputFlags_Multiline 

For internal use by InputTextMultiline()

InputFlags_Wordwarp 

Word wrap

InputFlags_NO_Modification 

do not modify text

InputFlags_CheckValueRange 

check value of range

InputFlags_Undo 

undo

InputFlags_ConsoleModel 

console mode

InputFlags_TextChange 

text change

InputFlags_ShowLineNumber 

show line number

InputFlags_ShowLineMark 

show line Mark

InputFlags_ShowPercentBar 

show line Mark

InputFlags_RemoveLastZero 

remove float last zero

◆ LayoutFlags

枚举值
ForceResetLayout 

◆ LineCapStyle

枚举值
BUTT 
ROUND 
SQUARE 

◆ LineMode

枚举值
LM_NO_Line 
LM_Step 
LM_Line 
LM_Spline 

◆ LogLevel

枚举值
LogLevel_TRACE 
LogLevel_DEBUG 
LogLevel_INFO 
LogLevel_WARN 
LogLevel_ERROR 
LogLevel_FATAL 

◆ LogOutputType

枚举值
LogToConsole 
LogToFile 

◆ MATCH_TYPE

枚举值
MT_NONE 
MT_NUM 
MT_TEXT 
MT_ENUM 

◆ MatchMask

枚举值
zero_match 
search_mask_shift 
default_mask_shift 

◆ MeterPinDrawType

表针形状

枚举值
MPDT_LINE 

普通表针

MPDT_TRIANGLE 

三角表针

◆ MOVE_MODE

枚举值
AM_LEFT 
AM_MID 
AM_RIGHT 

◆ OrderByType

枚举值
OrderByASC 

升序(A~Z)

OrderByDESC 

降序(Z~A)

OrderByNONE 

初始顺序

◆ RadarStyle

枚举值
RA_Polar 
RA_Radar 

◆ SurfaceFillRule

枚举值
ModeNonZero 
ModeEvenOdd 

◆ svg_align

枚举值
xMinYMin 
xMinYMid 
xMinYMax 
xMidYMin 
xMidYMid 
xMidYMax 
xMaxYMin 
xMaxYMid 
xMaxYMax 

◆ svg_preserve_aspect_ratio

枚举值
meet 
slice 
none 

◆ svg_text_align

枚举值
start 
middle 
end 

◆ TreeViewModelFlags

树状控件模型属性标志

枚举值
TVMF_ShowCheckBox 

显示复选框

TVMF_ExpandBtnTriStyle 

折叠按钮风格为三角形

TVMF_ShowTreeLineStyle 

显示层级线条

TVMF_TreeNodeMovable 

节点可被移动重排

◆ TypeMarkShape

枚举值
MS_NO_MARK 

MS_TRIANGLE 

三角形

MS_TRIANGLE_DOWM 

朝下三角形

MS_TRIANGLE_LEFT 

朝左三角形

MS_TRIANGLE_RIGHT 

朝右三角形

MS_RECT 

矩形

MS_CIRCLE 

圆形

MS_DIAMOND 

钻石图形

MS_CROSS 

交叉

MS_STAR 

五角星

◆ UIManagerFlag

控件扩展属性标志位

枚举值
UIManagerFlag_WhenBuildIgnoreLayout 

在构建完成之后在初始化控件位置信息

◆ WeightValueTransModel

枚举值
WeightFixed 

固定值

WeightWidthPercentage 

宽度百分比计算

WeightHeightPercentage 

高度百分比计算

WeightAxis1 

由自变量轴计算

WeightAxis2 

由因变量轴计算

函数说明

◆ AddFontFile()

UI_EXP int BUI::AddFontFile ( const char * name,
const char * file_path )

添加全局字体文件。

参数
id:全局id,id重复将覆盖原来的对象。
file_path:字体文件路径

◆ AddShader()

UI_EXP int BUI::AddShader ( int id,
const char * source_vs,
const char * source_ps,
GShaderLayoutDesc * layout,
int len )

添加全局着色器

参数
id: 全局id。id重复将覆盖原来的对象。一般调用 GenShaderID()获得
source_vs: 顶点着色器。对于directx,可以同片段着色器代码放在一起
source_ps: 片段着色器或像素着色器
layout: 着色器中顶点格式
len: layout的长度

◆ AddTexture()

UI_EXP int BUI::AddTexture ( int id,
BUI::GImage * img )

添加全局纹理。目标是创建GPU侧的内部纹理对象

参数
id:全局id,id重复将覆盖原来的对象。
img:位图(像素数据位于CPU侧)。

◆ AppCurrentDir()

UI_EXP LPCTSTR BUI::AppCurrentDir ( )

获得当前应用的执行目录

◆ ApplyCurrentTheme()

UI_EXP void BUI::ApplyCurrentTheme ( )

将所有控件主题切换到当前主题. e.g. 在此方法之前需要调用ThemeCurrent()->LoadFile("..."); 加载主题文件

◆ CalcLinearGradientTransform()

UI_EXP void BUI::CalcLinearGradientTransform ( float x1,
float y1,
float x2,
float y2,
TransformGradient & mtx,
float gradient_d2 = 100.0 )

◆ CalcRadialGradientTransform()

UI_EXP void BUI::CalcRadialGradientTransform ( float cx,
float cy,
float fx,
float fy,
float r,
float angle,
TransformGradient & mtx,
float gradient_d2 = 100.0 )

◆ CompareValueDouble()

bool BUI::CompareValueDouble ( SortData & v1,
SortData & v2 )
extern

◆ CompareValueLong()

bool BUI::CompareValueLong ( SortData & v1,
SortData & v2 )
extern

◆ CompareValueText()

bool BUI::CompareValueText ( SortData & v1,
SortData & v2 )
extern

◆ CompareValueTextNoCase()

bool BUI::CompareValueTextNoCase ( SortData & v1,
SortData & v2 )
extern

◆ CreateControl()

UI_EXP CControlUI * BUI::CreateControl ( const TCHAR * class_name,
IManageHandler * manager,
LPCTSTR name,
LPCTSTR text,
CControlUI * parent,
RECT rc,
UINT num_id,
UINT style )

根据读取的XML信息创建控件

◆ CreateNodeData()

UI_EXP CNodeData * BUI::CreateNodeData ( const TCHAR * type_name,
const TCHAR * des_class_name,
const TCHAR * class_name )

Create a Node Data object

参数
type_name预留参数
des_class_name预留参数
class_name类名称

◆ DelFontFile()

UI_EXP void BUI::DelFontFile ( const char * name)

删除指定字体文件

◆ DelTexture()

UI_EXP void BUI::DelTexture ( int id)

删除指定纹理

◆ EnableGlobalGrayscaleMode()

UI_EXP void BUI::EnableGlobalGrayscaleMode ( int gray_type)

开启全局灰度模式

参数
gray_type灰度算法 0: 针对人眼进行校正 Gray = (Red * 0.299 + Green * 0.587 + Blue * 0.114) 1: 平均加权方式,快速但效果不是最佳 Gray = (Red + Green + Blue )/3 2: 去饱和度 Gray = ( Max(Red, Green, Blue) + Min(Red, Green, Blue) ) / 2 3: 最大值分解 Gray = Max(Red, Green, Blue) 4: 最小值分解 Gray = Min(Red, Green, Blue) 5: 单色分解 Gray = Red 6: 单色分解 Gray = Green 7: 单色分解 Gray = Blue

◆ FontFileCount()

UI_EXP int BUI::FontFileCount ( )

获得指定字体文件个数

◆ GCManager()

UI_EXP CGlobalFunction * BUI::GCManager ( )

获得控件垃圾处理对象

◆ GenShaderID()

UI_EXP int BUI::GenShaderID ( )

生成一个ID

◆ GenTextureID()

UI_EXP int BUI::GenTextureID ( )

生成一个ID

◆ GetCSettingInfo()

UI_EXP CSettingInfo * BUI::GetCSettingInfo ( )

获得全局配置信息对象

◆ GetFontFile()

UI_EXP FontFile * BUI::GetFontFile ( int pos)

获得pos索引的字体文件信息

◆ GetGlobalGrayscaleMode()

UI_EXP int BUI::GetGlobalGrayscaleMode ( )

获得全局灰度模式。默认有7中算法

◆ GetMouseTracePoint()

UI_EXP POINT BUI::GetMouseTracePoint ( )

获得跟踪标记的位置

◆ getPointsFunction()

void BUI::getPointsFunction ( void * info,
const CGPathElement * element )

◆ GetPopWindowManager()

UI_EXP PopWindowManager * BUI::GetPopWindowManager ( )

获得弹窗管理对象

◆ GetRealRenderMode()

UI_EXP BOOL BUI::GetRealRenderMode ( )

获得实时渲染使能状态

◆ GetShaderInfo()

UI_EXP GShaderInfo * BUI::GetShaderInfo ( int pos)

获得指定着色器信息

◆ GetTextureInfo()

UI_EXP GTextureInfo * BUI::GetTextureInfo ( int pos)

获得指定纹理信息

◆ GetUISystem()

UI_EXP UISystemStartUp * BUI::GetUISystem ( )

获得UI全局系统对象

◆ GetWindowDockingManager()

UI_EXP WindowDockingManager * BUI::GetWindowDockingManager ( )

◆ InitializeUISystem()

UI_EXP int BUI::InitializeUISystem ( UISystemStartUp * gc)

初始化UI系统,并启动服务

◆ InitItemState()

UI_EXP void BUI::InitItemState ( ItemState & state)

◆ InstallGCManager()

UI_EXP void BUI::InstallGCManager ( CGlobalFunction * gc)

安装控件垃圾处理对象

◆ InstallLanguageTranslator()

UI_EXP void BUI::InstallLanguageTranslator ( CLanguageTranslator * lang_trans)

安装语言管理对象

◆ InstallPopWindowManager()

UI_EXP void BUI::InstallPopWindowManager ( PopWindowManager * popwin)

安装弹窗管理对象

◆ InstallResourceFont()

UI_EXP void BUI::InstallResourceFont ( CResourceFont * font_mgr)

安装字体管理对象

◆ InstallResourceGraphics()

UI_EXP void BUI::InstallResourceGraphics ( CResourceGraphics * res)

安装资源管理对象

◆ InstallSetingInfo()

UI_EXP void BUI::InstallSetingInfo ( CSettingInfo * config)

安装全局配置信息对象

◆ InstallToastBox()

UI_EXP void BUI::InstallToastBox ( CToastBox * toast_box)

安装全局信息弹出控件

◆ InstallWindowDockingManager()

UI_EXP void BUI::InstallWindowDockingManager ( WindowDockingManager * font_mgr)

◆ IsFontFileChange()

UI_EXP bool BUI::IsFontFileChange ( )

字体文件是否有变更

◆ IsShaderChange()

UI_EXP bool BUI::IsShaderChange ( )

着色器是否有变更

◆ IsTextureChange()

UI_EXP bool BUI::IsTextureChange ( )

纹理是否有变更

◆ KeyboardActionMap()

UI_EXP ActionKeyboardMap * BUI::KeyboardActionMap ( )

获得键盘事件映射管理对象。负责处理键盘事件响应

◆ KeyboardInput()

UI_EXP CkeyboardStatck * BUI::KeyboardInput ( )

获得全局键盘输入

◆ LangTranslate()

UI_EXP BOOL BUI::LangTranslate ( BeString & outstr,
LPCTSTR text )

◆ LangTranslateToBeString()

UI_EXP BOOL BUI::LangTranslateToBeString ( BeString & out_text,
LPCTSTR text,
BOOL init = FALSE )

◆ LanguageTranslator()

UI_EXP CLanguageTranslator * BUI::LanguageTranslator ( )

获得语言管理对象

◆ Load3dObj()

UI_EXP BOOL BUI::Load3dObj ( std::vector< std::shared_ptr< Render3dData > > & out_data,
const char * filename_utf8,
const char * mtl_dir = NULL )

加载obj 3d文件

◆ LoadTTF()

UI_EXP void BUI::LoadTTF ( const TCHAR * file)

◆ operator*()

GPathStorage BUI::operator* ( GPathStorage & path,
float factor )

◆ operator+()

GPathStorage BUI::operator+ ( GPathStorage & path1,
GPathStorage & path2 )

◆ operator-()

GPathStorage BUI::operator- ( GPathStorage & path1,
GPathStorage & path2 )

◆ ParseLayoutModel()

UI_EXP void BUI::ParseLayoutModel ( LPCTSTR text,
int * wl,
int * hl,
LayoutMode * mw,
LayoutMode * mh )

◆ ParserAnimColor()

std::shared_ptr< GAnimatePropertyValue< VecFloat4 > > BUI::ParserAnimColor ( XMLItem * node)

颜色和四种分量动画

◆ ParserAnimValue()

std::shared_ptr< GAnimatePropertyValue< float > > BUI::ParserAnimValue ( XMLItem * node)

单值属性动画

◆ ResourceFont()

UI_EXP CResourceFont * BUI::ResourceFont ( )

获得字体管理对象

◆ ResourceGraphics()

UI_EXP CResourceGraphics * BUI::ResourceGraphics ( )

获得资源管理对象

◆ RotationGradientTransform()

UI_EXP void BUI::RotationGradientTransform ( Transform2d & mtx,
float dx,
float dy )

◆ SetFontFileChange()

UI_EXP void BUI::SetFontFileChange ( bool is_change)

设置字体文件变更标志位

◆ SetMouseTracePoint()

UI_EXP void BUI::SetMouseTracePoint ( POINT pt)

设置鼠标的跟踪的起点位置,该位置用来计算当前位置,与跟踪位置的距离

参数
pt需要标记的位置

◆ SetRealRenderMode()

UI_EXP void BUI::SetRealRenderMode ( BOOL is_enable)

是否开启实时渲染模式(默认关闭)

◆ SetShaderChange()

UI_EXP void BUI::SetShaderChange ( bool is_change)

设置着色器变更标志位

◆ SetTextureChange()

UI_EXP void BUI::SetTextureChange ( bool is_change)

设置纹理变更标志位

◆ ShaderCount()

UI_EXP int BUI::ShaderCount ( )

获得指定着色器个数

◆ ShellTextGlyphEffect()

UI_EXP void BUI::ShellTextGlyphEffect ( TransAlongSinglePath & ge,
const BeString & str_name,
const BeString & str_value )

◆ stbi_convert_rgba_premultiplied()

UI_EXP void BUI::stbi_convert_rgba_premultiplied ( unsigned char * data,
int channel_r,
int channel_g,
int channel_b,
int alpha_channel,
unsigned int x,
unsigned int y,
unsigned int stride )

◆ svg_find_use_by_id()

XMLItemA * BUI::svg_find_use_by_id ( XMLItemA * parent,
const char * id,
int count )

◆ svg_get_url_name()

std::string BUI::svg_get_url_name ( const char * str)

◆ svg_is_numeric()

bool BUI::svg_is_numeric ( char c)

◆ svg_parse_color()

GColor BUI::svg_parse_color ( const char * str)

◆ svg_parse_transform()

void BUI::svg_parse_transform ( Transform2d & transform,
const char * str )

◆ svg_parse_transform_args()

unsigned BUI::svg_parse_transform_args ( const char * str,
double * args,
unsigned max_na,
unsigned * na )

◆ svg_parse_unit_value()

float BUI::svg_parse_unit_value ( const char * str)

◆ SvgParserAnimColor()

std::shared_ptr< GAnimatePropertyValue< VecFloat4 > > BUI::SvgParserAnimColor ( XMLItemA * node)

◆ SvgParserAnimPath()

std::shared_ptr< GAnimatePropertyValue< GPathStorage > > BUI::SvgParserAnimPath ( XMLItemA * node)

◆ SvgParserAnimPoints()

std::shared_ptr< GAnimatePropertyValue< GPathStorage > > BUI::SvgParserAnimPoints ( XMLItemA * node,
BOOL is_close )

◆ SvgParserAnimValue()

std::shared_ptr< GAnimatePropertyValue< float > > BUI::SvgParserAnimValue ( XMLItemA * node)

◆ TextureCount()

UI_EXP int BUI::TextureCount ( )

获得指定纹理个数

◆ ThemeCurrent()

UI_EXP CThemeMgr * BUI::ThemeCurrent ( )

获得当前应用的主题

◆ ToastBox()

UI_EXP CToastBox * BUI::ToastBox ( )

获得消息提示框

◆ UpdateSkin()

UI_EXP void BUI::UpdateSkin ( CManagerSkin & skin_mgr,
CControlUI * ui )

将皮肤信息应用到控件中

◆ UpdateSkinByStyleName()

UI_EXP void BUI::UpdateSkinByStyleName ( CSkinStyle & skin,
CControlUI * ui,
BOOL recursive_child = FALSE )

更新指定控件皮肤。常用于数据展示类型的定制化

参数
ui控件对象
recursive_childTRUE:递归子控件
鄂公网安备42018502007752 鄂ICP备2024082886
Copyright © 2026 · CBlueStudio 版权所有