Expand description
§rgpui - GPU 加速的跨平台 UI 框架
rgpui 是基于 Zed 编辑器的 gpui 框架的跨平台移植版本。
它提供了一套完整的 GPU 加速 UI 系统,包括:
- 实体系统(Entity System):基于 Arena 分配器的实体管理
- 响应式事件系统:观察者模式的订阅和通知机制
- 键盘事件分发:层级化的按键事件处理管线
- 布局引擎:基于 Taffy 的 Flexbox 布局
- 文本渲染:GPU 加速的文本排版和渲染
- 平台抽象层:支持 Windows、macOS、Linux、Web 等平台
§快速入门
use rgpui::prelude::*;
use rgpui::App;
fn main() {
App::new().run(|cx| {
// 在这里创建你的第一个窗口和视图
});
}§rgpui
rgpui 是 rgpui 项目的核心 crate,是一个混合即时/保留模式、GPU 加速的 Rust UI 框架。
关于项目背景、重命名原因和整体架构,请参见项目根目录 README。
§主要特性
- 混合即时/保留模式:结合即时模式的高性能与保留模式的状态管理优势
- 基于 Entity 的状态管理:通过智能指针安全地在应用各部分之间共享和通信状态
- 声明式视图(View):实现
Rendertrait 即可构建声明式 UI,每帧自动刷新 - 命令式元素(Element):底层构建块,提供对渲染和布局的完全控制
- GPU 加速渲染:利用 Metal/Vulkan 进行高性能图形渲染
- Taffy 布局引擎:支持 Flexbox 和 Grid 布局
- 丰富的文本系统:支持字体渲染、文本布局和高亮
- 输入处理与快捷键:完整的键盘/鼠标事件处理和可配置的键位映射
- 动画系统:内置动画支持
- 跨平台:支持 macOS、Linux 和 Windows
- Tailwind 风格 API:通过
div元素提供熟悉的样式链式调用 - 系统托盘:完整托盘图标、右键菜单及窗口隐藏/恢复功能
- 增强透明窗口:支持半透明、毛玻璃等视觉效果
§快速开始
§添加依赖
在 Cargo.toml 中添加:
[dependencies]
rgpui = "0.1"
rgpui_platform = "0.1"§最小示例
use rgpui::*;
use rgpui_platform::application;
struct HelloWorld;
impl Render for HelloWorld {
fn render(&mut self, _window: &mut Window, _cx: &mut Context<Self>) -> impl IntoElement {
div()
.flex()
.items_center()
.justify_center()
.size_full()
.child("Hello, RGPUI!")
}
}
fn main() {
application().run(|cx: &mut App| {
let bounds = Bounds::centered(None, size(px(500.), px(500.0)), cx);
cx.open_window(
WindowOptions {
window_bounds: Some(WindowBounds::Windowed(bounds)),
titlebar: Some(TitlebarOptions {
title: Some("Hello你好".into()),
..Default::default()
}),
..Default::default()
},
|_window, cx| cx.new(|_cx| HelloWorld),
)
.unwrap();
});
}§文档
§许可证
Apache-2.0
Re-exports§
pub use component_text::ComponentText;pub use component_text::ComponentTextViewStyle;pub use theme::color::ColorName;pub use theme::color::Colorize;pub use theme::color::hsl;pub use theme::color::try_parse_background;pub use theme::color::try_parse_color;pub use theme::registry::DEFAULT_THEME_COLORS;pub use theme::ActiveTheme;pub use theme::HighlightTheme;pub use theme::HighlightThemeStyle;pub use theme::ListSettings;pub use theme::NotificationSettings;pub use theme::ScrollbarShow;pub use theme::SheetSettings;pub use theme::StatusColors;pub use theme::SyntaxColors;pub use theme::TITLE_BAR_HEIGHT;pub use theme::Theme;pub use theme::ThemeColor;pub use theme::ThemeConfig;pub use theme::ThemeConfigColors;pub use theme::ThemeMode;pub use theme::ThemeRegistry;pub use theme::ThemeSet;pub use theme::ThemeToken;pub use theme::ThemeTokens;pub use theme::amber_50;pub use theme::amber_100;pub use theme::amber_200;pub use theme::amber_300;pub use theme::amber_400;pub use theme::amber_500;pub use theme::amber_600;pub use theme::amber_700;pub use theme::amber_800;pub use theme::amber_900;pub use theme::amber_950;pub use theme::blue_50;pub use theme::blue_100;pub use theme::blue_200;pub use theme::blue_300;pub use theme::blue_400;pub use theme::blue_500;pub use theme::blue_600;pub use theme::blue_700;pub use theme::blue_800;pub use theme::blue_900;pub use theme::blue_950;pub use theme::cyan_50;pub use theme::cyan_100;pub use theme::cyan_200;pub use theme::cyan_300;pub use theme::cyan_400;pub use theme::cyan_500;pub use theme::cyan_600;pub use theme::cyan_700;pub use theme::cyan_800;pub use theme::cyan_900;pub use theme::cyan_950;pub use theme::emerald_50;pub use theme::emerald_100;pub use theme::emerald_200;pub use theme::emerald_300;pub use theme::emerald_400;pub use theme::emerald_500;pub use theme::emerald_600;pub use theme::emerald_700;pub use theme::emerald_800;pub use theme::emerald_900;pub use theme::emerald_950;pub use theme::fuchsia_50;pub use theme::fuchsia_100;pub use theme::fuchsia_200;pub use theme::fuchsia_300;pub use theme::fuchsia_400;pub use theme::fuchsia_500;pub use theme::fuchsia_600;pub use theme::fuchsia_700;pub use theme::fuchsia_800;pub use theme::fuchsia_900;pub use theme::fuchsia_950;pub use theme::gray_50;pub use theme::gray_100;pub use theme::gray_200;pub use theme::gray_300;pub use theme::gray_400;pub use theme::gray_500;pub use theme::gray_600;pub use theme::gray_700;pub use theme::gray_800;pub use theme::gray_900;pub use theme::gray_950;pub use theme::green_50;pub use theme::green_100;pub use theme::green_200;pub use theme::green_300;pub use theme::green_400;pub use theme::green_500;pub use theme::green_600;pub use theme::green_700;pub use theme::green_800;pub use theme::green_900;pub use theme::green_950;pub use theme::indigo_50;pub use theme::indigo_100;pub use theme::indigo_200;pub use theme::indigo_300;pub use theme::indigo_400;pub use theme::indigo_500;pub use theme::indigo_600;pub use theme::indigo_700;pub use theme::indigo_800;pub use theme::indigo_900;pub use theme::indigo_950;pub use theme::lime_50;pub use theme::lime_100;pub use theme::lime_200;pub use theme::lime_300;pub use theme::lime_400;pub use theme::lime_500;pub use theme::lime_600;pub use theme::lime_700;pub use theme::lime_800;pub use theme::lime_900;pub use theme::lime_950;pub use theme::neutral_50;pub use theme::neutral_100;pub use theme::neutral_200;pub use theme::neutral_300;pub use theme::neutral_400;pub use theme::neutral_500;pub use theme::neutral_600;pub use theme::neutral_700;pub use theme::neutral_800;pub use theme::neutral_900;pub use theme::neutral_950;pub use theme::orange_50;pub use theme::orange_100;pub use theme::orange_200;pub use theme::orange_300;pub use theme::orange_400;pub use theme::orange_500;pub use theme::orange_600;pub use theme::orange_700;pub use theme::orange_800;pub use theme::orange_900;pub use theme::orange_950;pub use theme::pink_50;pub use theme::pink_100;pub use theme::pink_200;pub use theme::pink_300;pub use theme::pink_400;pub use theme::pink_500;pub use theme::pink_600;pub use theme::pink_700;pub use theme::pink_800;pub use theme::pink_900;pub use theme::pink_950;pub use theme::purple_50;pub use theme::purple_100;pub use theme::purple_200;pub use theme::purple_300;pub use theme::purple_400;pub use theme::purple_500;pub use theme::purple_600;pub use theme::purple_700;pub use theme::purple_800;pub use theme::purple_900;pub use theme::purple_950;pub use theme::red_50;pub use theme::red_100;pub use theme::red_200;pub use theme::red_300;pub use theme::red_400;pub use theme::red_500;pub use theme::red_600;pub use theme::red_700;pub use theme::red_800;pub use theme::red_900;pub use theme::red_950;pub use theme::rose_50;pub use theme::rose_100;pub use theme::rose_200;pub use theme::rose_300;pub use theme::rose_400;pub use theme::rose_500;pub use theme::rose_600;pub use theme::rose_700;pub use theme::rose_800;pub use theme::rose_900;pub use theme::rose_950;pub use theme::sky_50;pub use theme::sky_100;pub use theme::sky_200;pub use theme::sky_300;pub use theme::sky_400;pub use theme::sky_500;pub use theme::sky_600;pub use theme::sky_700;pub use theme::sky_800;pub use theme::sky_900;pub use theme::sky_950;pub use theme::slate_50;pub use theme::slate_100;pub use theme::slate_200;pub use theme::slate_300;pub use theme::slate_400;pub use theme::slate_500;pub use theme::slate_600;pub use theme::slate_700;pub use theme::slate_800;pub use theme::slate_900;pub use theme::slate_950;pub use theme::stone_50;pub use theme::stone_100;pub use theme::stone_200;pub use theme::stone_300;pub use theme::stone_400;pub use theme::stone_500;pub use theme::stone_600;pub use theme::stone_700;pub use theme::stone_800;pub use theme::stone_900;pub use theme::stone_950;pub use theme::teal_50;pub use theme::teal_100;pub use theme::teal_200;pub use theme::teal_300;pub use theme::teal_400;pub use theme::teal_500;pub use theme::teal_600;pub use theme::teal_700;pub use theme::teal_800;pub use theme::teal_900;pub use theme::teal_950;pub use theme::violet_50;pub use theme::violet_100;pub use theme::violet_200;pub use theme::violet_300;pub use theme::violet_400;pub use theme::violet_500;pub use theme::violet_600;pub use theme::violet_700;pub use theme::violet_800;pub use theme::violet_900;pub use theme::violet_950;pub use theme::yellow_50;pub use theme::yellow_100;pub use theme::yellow_200;pub use theme::yellow_300;pub use theme::yellow_400;pub use theme::yellow_500;pub use theme::yellow_600;pub use theme::yellow_700;pub use theme::yellow_800;pub use theme::yellow_900;pub use theme::yellow_950;pub use theme::zinc_50;pub use theme::zinc_100;pub use theme::zinc_200;pub use theme::zinc_300;pub use theme::zinc_400;pub use theme::zinc_500;pub use theme::zinc_600;pub use theme::zinc_700;pub use theme::zinc_800;pub use theme::zinc_900;pub use theme::zinc_950;pub use util::FutureExt;pub use util::Timeout;pub use crate::scheduler::FallibleTask;pub use crate::scheduler::ForegroundExecutor as SchedulerForegroundExecutor;pub use crate::scheduler::Priority;pub use crate::scheduler::Task;pub use crate::scheduler::RunnableMeta;pub use accesskit;pub use crate::collections::*;pub use crate::refineable::*;pub use profiler::*;pub use single_instance::*;pub use index_path::*;pub use menu::*;
Modules§
- _accessibility
- 无障碍访问文档模块 - 描述 RGPUI 的无障碍访问架构
- _ownership_
and_ data_ flow - 所有权与数据流文档模块 - 描述 RGPUI 的数据所有权模型
在 RGPUI 中,应用中的每个模型或视图实际上都由一个名为
App的顶层对象所拥有。当创建一个新的 Entity 或视图时(统称为 entities),应用会接管它们的状态所有权,使它们能够参与各种应用服务并与其他 entities 交互。 - animation
- 动画子模块 - 值驱动(弹簧)原语 + 上层动画 DSL + 核心动画桥接 动画子模块:值驱动(弹簧)原语 + 上层动画 DSL + 核心动画桥接。
- collections
- 边界树 - 用于空间查询的高性能数据结构 集合模块的重导出,用于向后兼容。
- colors
- 颜色模块 - 定义 HSL、RGBA 等颜色类型及转换 RGPUI 默认使用的颜色常量和主题定义 默认颜色集 —— 定义 UI 框架的主题色(亮色 / 暗色)及默认调色板。
- component_
text - 组件文本类型 - 轻量文本封装,供组件库使用
- components
- 扩展组件库 - 核心没有的组件 + 动画组件/特效(原 rgpui-ui 并入) 扩展组件库(核心没有的组件 + 动画组件/特效)。
- http_
client - HTTP 客户端库 - 提供异步 HTTP 请求能力
- index_
path - 索引路径 - 列表/表格中用于定位节、行、列的索引
- input_
ui - 输入组件子系统 - 输入框、文本框、数字输入、掩码输入等
- inspector_
reflection - 重导出检查器相关类型
提供
#[derive_inspector_reflection]使用的定义。 - layer_
shell - 重导出平台抽象层相关类型 Wayland Layer Shell 支持 — 允许窗口作为覆盖层、面板或桌面背景渲染。
- list
- 列表子系统 - 虚拟化列表、ListDelegate、ListState 等
- menu
- 菜单组件 - 弹窗菜单、右键菜单、下拉菜单与应用菜单栏
- mouse_
gestures - 鼠标手势识别 - 轻点/双击/长按/拖动/滑动 手势检测器:将鼠标按下/移动/抬起序列识别为轻点、双击、长按、拖动(pan)与滑动(swipe)。
- perf
- 性能基准测试工具 - 提供帧率和渲染性能的基准测试支持 RGPUI 性能分析器使用的常量和数据类型。
- popup
- 重导出平台抽象层相关类型 用于配置父窗口锚定弹出窗口的类型,如下拉菜单、弹出菜单和工具提示。
- prelude
- 预导入模块 - 常用类型的便捷重导出
RGPUI 预导入集合:常用 trait 与类型。推荐在应用中使用
use rgpui::prelude::*一次性导入,避免逐个手动引入。 - profiler
- 性能分析工具 - 任务计时和线程性能追踪
- queue
- 优先级队列 - Windows/Linux/WASM 平台下的异步消息队列 队列数据结构:支持优先级调度的异步任务队列。
- refineable
- 精化类型 - 支持部分初始化的类型安全模式
- scheduler
- 任务调度器 - 异步任务的执行和协调 调度器:管理定时器、延迟任务与优先级调度。
- scroll_
physics - 滚动物理模型 - 滚动惯性(动量)、减速度与越界回弹 滚动物理模型:处理滚动惯性(动量)、减速度与越界回弹(overscroll)。
- single_
instance - 单实例模式 - 确保应用程序只有一个实例运行 跨平台单实例锁实现
- styled_
reflection - 重导出样式化 trait 实现函数反射
- sum_
tree - 和树数据结构 - 一种并发友好的 B-tree 变体,用于文本缓冲区等场景 有序树数据结构:基于 B-tree 的有序集合,支持范围查询与增量聚合。
- table
- 表格子系统 - 虚拟化数据表格、列定义、表头与表体组件 表格子系统 - 虚拟化数据表格、列定义、表头与表体组件
- tabs
- 标签页子系统 - Tab、TabBar、手风琴与折叠面板组件 标签页/手风琴/折叠面板子系统 - Tabs、Accordion、Collapsible 组件
- theme
- 主题系统 - 颜色工具、色板与主题注册机制
- title_
bar - 标题栏子系统 - 自定义标题栏、窗口控制按钮与客户端装饰边框 标题栏与窗口边框组件 - 自定义标题栏、窗口控制按钮与客户端装饰边框。
- tree
- 树形组件 - 分层树视图(文件树、目录树等) 树形组件 - 分层树视图(文件树、目录树等)。
- util
- 工具函数 - 异步超时、延迟执行等通用辅助工具
- window_
positioner - 窗口定位器 - 计算新窗口在屏幕上的初始位置 窗口位置计算器
Macros§
- actions
- 定义并注册可用作动作的单元结构体。对于更复杂的数据类型,请派生
Action。 - bench_
group - 定义用于标注了
#[rgpui::bench]的基准测试的 Criterion 基准测试组。 - bench_
main - 定义 RGPUI Criterion 基准测试组的入口点。
- border_
style_ methods - 生成边框(border)样式相关的方法。
- box_
shadow_ style_ methods - 生成盒子阴影(box shadow)样式相关的方法。
- cursor_
style_ methods - 生成光标(cursor)样式相关的方法。
- debug_
panic - 在调试模式下 panic,在发布模式下记录错误及回溯
- icon_
named - 重导出 rgpui_macros 中的过程宏(AppContext、IntoElement、Render 等)
icon_named!宏 - 通过扫描 SVG 目录生成图标枚举及其IconNamed实现。 - margin_
style_ methods - 生成外边距(margin)样式相关的方法。
- maybe
- 展开为立即调用的函数表达式。适用于在不返回 Option 或 Result 的函数中使用 ? 运算符
- overflow_
style_ methods - 生成溢出(overflow)样式相关的方法。
- padding_
style_ methods - 生成内边距(padding)样式相关的方法。
- position_
style_ methods - 生成定位(position)样式相关的方法。
- register_
action - 重导出 rgpui_macros 中的过程宏(AppContext、IntoElement、Render 等) 用于向 RGPUI 运行时注册动作的过程宏。
- text
- 创建一个新的
Text元素。 - visibility_
style_ methods - 生成可见性样式相关的方法。
Structs§
- A11y
Callbacks - 重导出平台抽象层相关类型 辅助功能适配器的回调函数。
- A11y
Subtree Builder - 重导出窗口系统类型
合成子节点的构建器 API。详见
Element::a11y_synthetic_children的文档。 - Alert
Dialog - 重导出对话框组件 AlertDialog 是中断用户以显示重要内容并期望回应的模态对话框。
- Anchored
- 重导出所有内置元素类型 一个锚定元素,可用于显示会避免超出窗口边界的 UI。
- Anchored
State - 重导出所有内置元素类型 锚定元素用于跟踪其子元素的状态。
- Animation
- 重导出所有内置元素类型 一个可以应用于元素的动画。
- Animation
Element - 重导出所有内置元素类型 一个将动画应用于另一个元素的 RGPUI 元素
- AnyChild
Element - 重导出所有内置元素类型
类型擦除的子元素,可在渲染前接受 [
ChildElementOptions]。 - AnyDrag
- 重导出 App 核心模块(App、Context、Entity、EntityId 等) 包含与活动拖动操作关联的状态,通过在窗口中拖动元素 或从底层平台拖入应用来启动。
- AnyElement
- 重导出元素系统核心类型 动态类型元素,可存储任意元素类型。
- AnyEntity
- 重导出 App 核心模块(App、Context、Entity、EntityId 等)
可以向下转型为
Entity<T>的动态类型实体引用。 - AnyImage
Cache - 重导出所有内置元素类型 一个动态类型的图像缓存,可用于存储任何图像缓存
- AnyTooltip
- 重导出 App 核心模块(App、Context、Entity、EntityId 等) 包含与工具提示关联的状态。仅当在自定义元素上实现工具提示行为时才需要此结构体。 否则,请使用 Div::tooltip。
- AnyView
- 重导出视图系统类型
可向下转型为特定
Entity<V>的动态类型视图句柄。 - AnyWeak
Entity - 重导出 App 核心模块(App、Context、Entity、EntityId 等) 指向给定类型实体的弱引用。
- AnyWeak
View - 重导出视图系统类型 弱引用的动态类型视图句柄。
- AnyWindow
Handle - 重导出窗口系统类型 具有任意根视图类型的窗口句柄,可以向下转型为具有特定根视图类型的窗口。
- App
- 重导出 App 核心模块(App、Context、Entity、EntityId 等)
包含整个应用的状态,作为引用传递给各种回调。
其他 Context 通过解引用转换为此类型。
需要
App的引用来访问 Entity 的状态。 - Application
- 重导出 App 核心模块(App、Context、Entity、EntityId 等)
对 RGPUI 应用的引用,通常在应用的
main函数中构建。 除初始配置和启动阶段外,你不会频繁与此类型交互。 - Application
Handle - 重导出 App 核心模块(App、Context、Entity、EntityId 等)
通过
Application::run_embedded启动的应用的强引用句柄。 - Arena
Clear Needed - 重导出窗口系统类型 当元素 arena 已被使用时返回,因此必须在下次绘制前清除。
- Async
App - 重导出 App 核心模块(App、Context、Entity、EntityId 等)
App 的异步友好版本,具有静态生命周期,因此可以在异步代码的
await点之间持有。 调用 App::spawn 时会提供此实例,你也可以通过 App::to_async 创建。 - Async
Window Context - 重导出 App 核心模块(App、Context、Entity、EntityId 等) 对应用上下文的克隆 owned 句柄, 与当前任务关联的窗口组合在一起。
- Atlas
Texture Id - 重导出平台抽象层相关类型 图集纹理的唯一标识符,包含索引和内容类型。
- Atlas
Tile - 重导出平台抽象层相关类型 精灵图集中的一块瓦片,描述其在纹理中的位置和边距。
- Auto
Scroll - 重导出所有内置元素类型 管理拖拽选择期间基于定时器的自动滚动。
- Background
- 重导出颜色类型(Hsla、Rgba、HslOverride 等) 背景颜色,可以是纯色或线性渐变。
- Background
Executor - 重导出执行器类型(ForegroundExecutor、BackgroundExecutor) 指向当前正在运行的执行器的指针, 用于生成后台任务。
- Badge
- 重导出所有内置元素类型 用于在元素上显示计数、圆点或图标的徽标(Badge)。
- Binding
Index - 重导出快捷键映射相关类型 按键映射中绑定的索引。
- Boundary
- 重导出文本系统相关类型 两行文本之间的边界。
- Bounds
- 重导出几何类型(Point、Size、Bounds 等) 表示二维空间中的矩形区域,包含原点和尺寸。
- Bounds
Refinement - 重导出几何类型(Point、Size、Bounds 等)
[
#ident] 的可细化版本,详见该文档。 - BoxShadow
- 重导出样式类型(Style、Display、Position 等) box-shadow 属性的可能值
- Button
- 重导出所有内置元素类型 按钮元素。
- Button
Custom Variant - 重导出所有内置元素类型 自定义按钮变体样式。
- Cancel
Dialog - 重导出对话框组件
CancelDialog动作。 - Canvas
- 重导出所有内置元素类型 画布元素,用于在不定义完整自定义元素的情况下访问底层绘制 API
- Capslock
- 重导出平台抽象层相关类型 某个时间点的 capslock 键状态
- Caret
- 重导出所有内置元素类型 下拉选择箭头(caret)元素。
- Checkbox
- 重导出所有内置元素类型 复选框(Checkbox)元素。
- Clipboard
Item - 重导出平台抽象层相关类型 应复制到剪贴板的剪贴板项目
- Clipboard
String - 重导出平台抽象层相关类型 应复制到剪贴板的剪贴板字符串项目
- Confirm
Dialog - 重导出对话框组件
ConfirmDialog动作。 - Container
Query - 重导出所有内置元素类型
一个容器查询元素,由
container_query创建。 - Content
Mask - 重导出窗口系统类型 表示窗口的哪个区域是可见的。超出此遮罩的内容将不会被渲染。 目前仅支持矩形内容遮罩,但我们为遮罩定义了独立类型,以便未来支持更复杂的形状。
- Context
- 重导出 App 核心模块(App、Context、Entity、EntityId 等)
实体上下文 - 针对给定实体类型
T提供专门操作的上下文。 - Context
Entry - 重导出快捷键映射相关类型 KeyContext 中的条目
- Corners
- 重导出几何类型(Point、Size、Bounds 等) 表示二维空间中盒子的圆角,如边框圆角。
- Corners
Refinement - 重导出几何类型(Point、Size、Bounds 等)
[
#ident] 的可细化版本,详见该文档。 - Debug
Below - 重导出样式类型(Style、Display、Position 等) 使用此结构与你自己元素中的 ‘debug_below’ 样式进行交互。 如果父元素设置了此样式,则此结构将被设置为 RGPUI 中的全局值。
- Decoration
Run - 重导出文本系统相关类型 设置文本段的文本装饰
- Deferred
- 重导出所有内置元素类型 一个延迟子元素绘制的元素,直到所有祖先绘制完成后才绘制, 同时将其布局作为当前元素树的一部分。
- Deferred
Scroll ToItem - 重导出所有内置元素类型 延迟滚动到指定项的参数。在下次布局时执行滚动。
- Device
Pixels - 重导出几何类型(Point、Size、Bounds 等) 表示显示设备上的物理像素。
- Dialog
- 重导出对话框组件 模态对话框,用于在对话框中显示内容。
- Dialog
Action - 重导出对话框组件 对话框确认包装元素,点击后触发确认对话框 action。
- Dialog
Button Props - 重导出对话框组件 对话框按钮属性。
- Dialog
Close - 重导出对话框组件 对话框关闭包装元素,点击后触发取消对话框 action。
- Dialog
Content - 重导出对话框组件 对话框内容容器。
- Dialog
Description - 重导出对话框组件 对话框描述元素,通常放在 DialogHeader 中提供额外上下文。
- Dialog
Footer - 重导出对话框组件 对话框底部区域,通常包含操作按钮。
- Dialog
Header - 重导出对话框组件 对话框头部区域,通常包含 DialogTitle 和 DialogDescription。
- Dialog
Options - 重导出平台抽象层相关类型 对话框选项
- Dialog
Title - 重导出对话框组件 对话框标题元素。
- Dismiss
Event - 重导出窗口系统类型
由
ManagedView的实现者发出,表示视图应被关闭,例如当视图以模态方式呈现时。 - Dispatch
Event Result - 重导出窗口系统类型 事件分发结果 — 指示事件是否继续传播以及默认行为是否被阻止。
- Display
Id - 重导出平台抽象层相关类型 硬件显示器的不透明标识符
- Div
- 重导出所有内置元素类型
Div元素,用于在 RGPUI 中构建复杂 UI 的一体化元素 - DivFrame
State - 重导出所有内置元素类型
Div元素的帧状态,包含其子元素的布局 ID。 - DivInspector
State - 重导出所有内置元素类型 在检查器中显示和操作的交互状态。
- Drag
Move Event - 重导出所有内置元素类型 当拖拽移动经过此元素时触发的事件,包含给定的状态类型。
- Drawable
- 重导出元素系统核心类型
Element实现者的包装器,使其可在窗口中绘制。 - Dummy
Keyboard Mapper - 重导出平台抽象层相关类型 平台键盘映射器的虚拟实现
- Edges
- 重导出几何类型(Point、Size、Bounds 等) 表示二维空间中盒子的边距,如内边距或外边距。
- Edges
Refinement - 重导出几何类型(Point、Size、Bounds 等)
[
#ident] 的可细化版本,详见该文档。 - Element
Clicked State - 重导出所有内置元素类型 元素或包含它的分组是否被鼠标点击。
- Element
Hover State - 重导出所有内置元素类型 元素或包含它的分组是否被悬停。
- Element
Input Handler - 重导出输入事件相关类型
crate::PlatformInputHandler的标准实现。在元素绘制时调用Window::handle_input并传入实例。 - Empty
- 重导出元素系统核心类型 空元素,不渲染任何内容。
- Empty
View - 重导出视图系统类型 不渲染任何内容的视图
- Entity
- 重导出 App 核心模块(App、Context、Entity、EntityId 等)
指向由 RGPUI 管理的结构体的强类型引用。
可以向下转型为
Entity<T>。 - Entity
Id - 重导出 App 核心模块(App、Context、Entity、EntityId 等) 应用中实体的唯一标识符。
- External
Paths - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的路径集合,例如文件拖放时的路径。
- Fallback
Prompt Renderer - 重导出窗口系统类型 默认的 RGPUI 回退提示渲染,当平台不支持时使用
- Field
- 重导出表单组件 表单字段元素。
- Fill
Options - Parameters for the fill tessellator.
- Focus
Handle - 重导出窗口系统类型 用于跟踪和操作窗口中焦点元素的句柄。
- FocusId
- 重导出窗口系统类型 可聚焦元素的全局唯一标识符。
- Focus
OutEvent - 重导出窗口系统类型
订阅
Context::on_focus_out事件时提供。 - Focus
Trap Container - 重导出焦点陷阱能力(FocusTrapElement、FocusTrapContainer) 实现焦点陷阱行为的包装元素。
- Focused
Window Info - 重导出平台抽象层相关类型 聚焦窗口信息
- Font
- 重导出文本系统相关类型 用于标识特定字体的配置详情。
- Font
Fallbacks - 重导出文本系统相关类型 指定字体可配置的备用字体。 备用字体的字体族名称存储在此结构中。
- Font
Family Id - 重导出文本系统相关类型 特定字体族的不透明标识符。
- Font
Features - 重导出文本系统相关类型 可为给定字体配置的 OpenType 功能。
- FontId
- 重导出文本系统相关类型 特定字体的不透明标识符。
- Font
Metrics - 重导出文本系统相关类型 用于存储字体度量信息的结构体。 用于定义字体的度量尺寸。
- FontRun
- 重导出文本系统相关类型 具有单一字体的文本段,记录该段使用的字体和字符数。
- Font
Weight - 重导出文本系统相关类型 字体的黑度或笔画粗细程度。该值范围为 100.0 到 900.0, 400.0 为常规值。
- Foreground
Executor - 重导出执行器类型(ForegroundExecutor、BackgroundExecutor) 指向当前正在运行的执行器的指针, 用于在主线程上生成任务。
- Form
- 重导出表单组件 包含多个表单字段的表单元素。
- Gesture
Kinds - 重导出手势识别相关类型 参与识别的手势类型集合。
- Gesture
Tuning - 重导出手势识别相关类型 手势识别器使用的体验常量。尽力提供,取决于各平台的支持, 默认使用 RGPUI 自身(iOS 风格)的值
- Global
Element Id - 重导出元素系统核心类型 元素的全局唯一标识符,用于跨帧追踪状态。
- GlyphId
- 重导出文本系统相关类型
特定字形的标识符,由
WindowTextSystem::layout_line返回。 - Glyph
Raster Data - 重导出文本系统相关类型 预计算的字形光栅数据,用于高效绘制而无需每个字形缓存查找。
- GpuSpecs
- GPU 规格信息 - 描述 rgpui 运行所在的 GPU 硬件信息。
- Gpui
Borrow - 重导出 App 核心模块(App、Context、Entity、EntityId 等) 对 RGPUI 拥有的实体的可变引用
- Grid
Location - 重导出几何类型(Point、Size、Bounds 等) 网格布局中的位置。
- Grid
Template - 重导出样式类型(Style、Display、Position 等)
grid-template-*值的简化表示 - Grid
Template Refinement - 重导出样式类型(Style、Display、Position 等)
[
#ident] 的可细化版本,详见该文档。 - Group
Style - 重导出所有内置元素类型 给定分组的样式信息。
- Highlight
Style - 重导出样式类型(Style、Display、Position 等)
高亮样式,类似于
TextStyle,但适用于单一字体、 统一大小和间距的文本。 - Hitbox
- 重导出窗口系统类型 一个可能阻挡先前插入的 hitbox 的矩形区域。 详见 Window::insert_hitbox。
- Hitbox
Id - 重导出窗口系统类型 包含 HitboxBehavior 的 Hitbox 标识符。
- Hsla
- 重导出颜色类型(Hsla、Rgba、HslOverride 等) 一个 HSLA 颜色
- Icon
- 重导出所有内置元素类型 图标元素,用于渲染 SVG 矢量图标。
- Image
- 重导出平台抽象层相关类型 图像,包含格式和字节数据
- Image
Cache Element - 重导出所有内置元素类型 一个图像缓存元素。
- Image
Format Iter - 重导出平台抽象层相关类型 An iterator over the variants of ImageFormat
- ImageId
- 重导出资源加载相关类型 图像缓存的唯一标识符
- Image
Style - 重导出所有内置元素类型 图像元素的样式。
- Img
- 重导出所有内置元素类型 一个图像元素。
- ImgLayout
State - 重导出所有内置元素类型 帧之间的图像布局状态
- Inspector
- 重导出检查器相关类型 管理检查器状态 - 当前选中的元素以及检查器是否处于 拾取模式。
- Inspector
Element Id - 重导出检查器相关类型 可检查元素的唯一标识符。
- Inspector
Element Path - 重导出检查器相关类型
由元素构造源位置限定的
GlobalElementId。 - Interactive
Element State - 重导出所有内置元素类型 交互元素的每帧状态。用于跟踪有状态交互,如点击和滚动偏移量。
- Interactive
Text - 重导出所有内置元素类型 一个可交互的文本元素。
- Interactivity
- 重导出所有内置元素类型
交互状态结构体。驱动
Div元素中所有通用交互功能。 - Invalid
Keystroke Error - 重导出平台抽象层相关类型
Keystroke::parse的错误类型。使用此类型而不是anyhow::Error,以便 Zed 可以使用 markdown 来显示它。 - Item
Size - 重导出所有内置元素类型 项及其内容的大小。
- Item
Size Layout - 重导出所有内置元素类型 虚拟列表的尺寸布局缓存。
- Kbd
- 重导出所有内置元素类型 用于显示键盘快捷键的标签(Kbd)。
- KeyBinding
- 重导出快捷键映射相关类型 键绑定及其关联的元数据,来自键映射
- KeyBinding
Meta Index - 重导出快捷键映射相关类型 用于检索与键绑定关联元数据的唯一标识符。 用作用户定义的元数据存储的索引或键, 例如绑定的来源。
- KeyContext
- 重导出快捷键映射相关类型 用于解析是否应在元素树的当前位置分发动作的数据结构。 包含一组标识符和/或键值对,表示键映射的当前上下文。
- KeyDown
Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 平台的按键按下事件等价类型。
- KeyUp
Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 平台的按键释放事件等价类型。
- Keybinding
Keystroke - 重导出平台抽象层相关类型 表示可用于键绑定并向用户显示的按键。
- Keyboard
Click Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 由键盘按键按下并释放生成的点击事件。
- Keymap
- 重导出快捷键映射相关类型 用户应用程序的按键绑定集合。
- Keymap
Version - 重导出快捷键映射相关类型 当前活动按键映射版本的不透明标识符。 每当添加或移除绑定时,按键映射的版本都会更改。
- Keystroke
- 重导出平台抽象层相关类型 由平台生成的按键及关联元数据
- Keystroke
Event - 重导出 App 核心模块(App、Context、Entity、EntityId 等) 按键事件,以及可能关联的动作
- Label
- 重导出所有内置元素类型 文本标签元素,支持可选的次要文本、掩码与高亮功能。
- Layout
Id - 重导出 Taffy 布局引擎类型(AvailableSpace、LayoutId) 布局节点的唯一标识符,在向 Taffy 请求布局时生成。
- Line
Layout - 重导出文本系统相关类型 已排版和样式化的文本行
- Line
Wrapper - 重导出文本系统相关类型 RGPUI 行包装器,用于将文本行包装到给定宽度。
- Line
Wrapper Handle - 重导出文本系统相关类型 文本系统句柄,可用于计算文本的换行布局
- Linear
Color Stop - 重导出颜色类型(Hsla、Rgba、HslOverride 等) 线性渐变中的颜色停止点。
- List
- 重导出所有内置元素类型 一个列表元素
- List
Offset - 重导出所有内置元素类型 列表项的偏移量,以项索引和距项左上角的像素数表示。
- List
Prepaint State - 重导出所有内置元素类型 List 元素布局后使用的帧状态。
- List
Scroll Event - 重导出所有内置元素类型 已转换为列表项术语的滚动事件。
- List
State - 重导出所有内置元素类型 列表视图必须为列表元素持有的状态。
- Long
Press Event - 重导出手势识别相关类型 长按手势,移动端的右键菜单触发器。
- Media
KeyEvent - 重导出平台抽象层相关类型 媒体键事件
- Menu
- 重导出平台抽象层相关类型 应用程序菜单,可以是主菜单或子菜单
- Modifiers
- 重导出平台抽象层相关类型 某个时间点的修饰键状态
- Modifiers
Changed Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 平台的修饰键变更事件等价类型。
- Monochrome
Sprite - 重导出场景系统相关类型 单色精灵 — 从图集纹理中采样的灰度字形或图标。
- Mouse
Click Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 点击事件,当鼠标按键按下并释放时生成。
- Mouse
Down Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的鼠标按下事件
- Mouse
Exit Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的鼠标离开事件,当鼠标离开窗口时生成。
- Mouse
Move Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的鼠标移动事件。
- Mouse
Pressure Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的鼠标压力事件。当用力按压力敏触摸板时生成。 目前仅在 macOS 触摸板上实现。
- Mouse
UpEvent - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的鼠标释放事件
- NoAction
- 重导出所有 Action 相关类型
具有特殊处理的动作,如果它是最高优先级匹配项,
则会解除关联的键绑定。
NoAction动作。 - Noop
Text System - 重导出平台抽象层相关类型 空操作文本系统实现,所有方法返回默认值。用于测试或无文本系统需求的平台。
- Null
Platform Gestures - 重导出手势识别相关类型
一个空操作的
PlatformGestures实现:无原生识别器,使用默认调优。 适用于桌面平台和测试。 - Ongoing
Scroll - 重导出手势识别相关类型 跟踪一次滚动手势中各事件的主导方向轴。
- OsInfo
- 重导出平台抽象层相关类型 操作系统信息
- OsMenu
- 重导出平台抽象层相关类型 操作系统菜单,由操作系统识别 这允许操作系统为这些菜单提供专门的菜单项
- Owned
Menu - 重导出平台抽象层相关类型 应用程序菜单,可以是主菜单或子菜单
- Owned
OsMenu - 重导出平台抽象层相关类型 操作系统菜单,由操作系统识别 这允许操作系统为这些菜单提供专门的行为
- Paint
Quad - 重导出窗口系统类型
在窗口中以给定位置和大小渲染的矩形。
作为参数传递给
Window::paint_quad。 - Paint
Surface - 重导出场景系统相关类型 绘制表面 — 用于平台原生表面渲染(如 macOS CVPixelBuffer)。
- Path
- 重导出场景系统相关类型 由一系列顶点和控制点组成的矢量路径,支持填充和变换。
- Path
Builder - 重导出路径构建器
Path构建器。 - PathId
- 重导出场景系统相关类型 路径的唯一标识符。
- Path
Prompt Options - 重导出平台抽象层相关类型 文件对话框提示可配置的选项
- Path
Vertex - 重导出场景系统相关类型
- Percentage
- 重导出几何类型(Point、Size、Bounds 等) 表示百分比值的类型。
- Pinch
Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的捏合手势事件,当用户执行捏合缩放手势(通常在触摸板上)时生成。
- Pixels
- 重导出几何类型(Point、Size、Bounds 等) 表示以像素为单位的长度,UI 框架中的基本度量单位。
- Platform
Input Handler - 重导出平台抽象层相关类型 平台输入处理器,封装异步窗口上下文和文本输入回调,处理选区、标记文本等 IME 操作。
- Point
- 重导出几何类型(Point、Size、Bounds 等) 描述二维笛卡尔空间中的一个位置。
- Point
Refinement - 重导出几何类型(Point、Size、Bounds 等)
[
#ident] 的可细化版本,详见该文档。 - Polychrome
Sprite - 重导出场景系统相关类型 多色精灵 — 从图集纹理中采样的彩色图像(Emoji、图标等)。
- Prompt
Handle - 重导出窗口系统类型 可用于与提示交互的句柄
- Prompt
Response - 重导出窗口系统类型 选择提示选项时触发的事件。 usize 是所选选项的索引,来自传递给提示的动作
- Quad
- 重导出场景系统相关类型 四边形图元 — 矩形区域,支持背景色、边框、圆角和变换。
- Radians
- 重导出几何类型(Point、Size、Bounds 等) 表示弧度角。
- Radio
- 重导出所有内置元素类型 单选按钮(Radio)元素。
- Radio
Group - 重导出所有内置元素类型 单选按钮组(RadioGroup)元素。
- Rems
- 重导出几何类型(Point、Size、Bounds 等)
表示以 rem 为单位的长度,一种基于窗口字体大小的单位,可通过
Window::set_rem_size设置。 - Render
Glyph Params - 重导出文本系统相关类型 字形渲染参数,用作光栅化边界和精灵图集的缓存键。
- Render
Image - 重导出资源加载相关类型 已缓存并处理的图像,采用 BGRA 格式
- Render
Image Params - 重导出资源加载相关类型 图像渲染参数,用作精灵图集(Atlas)的缓存键。
- Render
SvgParams - 重导出 SVG 渲染器相关类型 SVG 渲染参数,用作精灵图集的缓存键。
- Renderable
Prompt Handle - 重导出窗口系统类型 可在窗口中渲染的提示句柄
- Request
Frame Options - 重导出平台抽象层相关类型 帧请求选项,控制平台何时请求重绘。
- Reservation
- 实体预留槽位 - 由
Context::reserve_entity返回,用于稍后传递给Context::insert_entity。 - Retain
AllImage Cache - 重导出所有内置元素类型 一个 ImageCache 实现,使用 LRU 缓存策略在缓存满时卸载图像
- Retain
AllImage Cache Provider - 重导出所有内置元素类型 一个用于内联创建保留所有图像缓存的提供者结构体
- Rgba
- 重导出颜色类型(Hsla、Rgba、HslOverride 等) 一个 RGBA 颜色
- Root
- 重导出根视图 窗口根视图 - 管理对话框层的全局状态(active_dialogs、焦点恢复等)。
- Scaled
Pixels - 重导出几何类型(Point、Size、Bounds 等) 表示考虑设备缩放因子的缩放像素。
- Scene
- 重导出场景系统相关类型 渲染场景 — 收集所有绘制图元(四边形、路径、精灵、阴影等),供 GPU 批量渲染。
- Scope
- 重导出执行器类型(ForegroundExecutor、BackgroundExecutor)
Scope 管理一组一起入队并等待的任务。参见
BackgroundExecutor::scoped。 - Screen
Capture Frame - 重导出平台抽象层相关类型 从屏幕捕获的视频帧。
- Scroll
Anchor - 重导出所有内置元素类型 可以在父元素中滚动到的元素。 与 ScrollHandle::scroll_to_active_item 不同,锚定元素不必是父元素的直接子元素。
- Scroll
Handle - 重导出所有内置元素类型 元素可滚动方面的句柄。 用于访问滚动状态(如当前滚动偏移量)和修改滚动状态(如滚动到特定子元素)。
- Scroll
Wheel Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的鼠标滚轮事件。
- Scrollable
- 重导出所有内置元素类型 滚动元素包装器,将原元素渲染为滚动区域并叠加滚动条。
- Scrollable
Mask - 重导出所有内置元素类型 创建一个可滚动遮罩元素,覆盖父视口并监听滚轮事件。
- Scrollbar
- 重导出所有内置元素类型 滚动区域或均匀列表的滚动条控件。
- Separator
- 重导出所有内置元素类型 垂直或水平方向的分隔线(Separator)。
- Shadow
- 重导出场景系统相关类型 阴影图元 — 支持外阴影和内阴影,可配置模糊半径和颜色。
- Shaped
Glyph - 重导出文本系统相关类型 单个字形,准备绘制
- Shaped
Line - 重导出文本系统相关类型 已塑形和装饰的文本行
- Shaped
Run - 重导出文本系统相关类型 已塑形的文本段
- Shared
String - 重导出 SharedString 相关类型
共享字符串是 RGPUI 任务中可以廉价克隆的不可变字符串。
本质上是
Arc<str>和&'static str的抽象, 当前由SmolStr支持。 - Shared
Uri - 重导出共享 URI 类型
包含 URI 的
SharedString。 - Size
- 重导出几何类型(Point、Size、Bounds 等) 表示二维空间中具有宽度和高度的尺寸结构。
- Size
Refinement - 重导出几何类型(Point、Size、Bounds 等)
[
#ident] 的可细化版本,详见该文档。 - Skeleton
- 重导出所有内置元素类型 骨架屏(Skeleton)加载占位元素。
- Slider
- 重导出所有内置元素类型 滑块(Slider)元素。
- Slider
State - 重导出所有内置元素类型
Slider的状态。 - Source
Metadata - 重导出平台抽象层相关类型 屏幕捕获源的元数据
- Spinner
- 重导出所有内置元素类型 循环加载的旋转指示器(Spinner)。
- Stateful
- 重导出所有内置元素类型 可以存储状态的元素包装器,在分配 ElementId 后生成。
- Strikethrough
Style - 重导出样式类型(Style、Display、Position 等) 可以应用于删除线的属性。
- Strikethrough
Style Refinement - 重导出样式类型(Style、Display、Position 等)
[
#ident] 的可细化版本,详见该文档。 - Stroke
Options - Parameters for the tessellator.
- Style
- 重导出样式类型(Style、Display、Position 等)
可以通过
Styledtrait 应用于元素的 CSS 样式 - Style
Refinement - 重导出样式类型(Style、Display、Position 等)
[
#ident] 的可细化版本,详见该文档。 - Styled
Text - 重导出所有内置元素类型 渲染带有不同样式文本段的文本。
- Subpixel
Sprite - 重导出场景系统相关类型 亚像素精灵 — 使用 LCD 抗锯齿渲染的字形,需要 RGB 三通道采样。
- Subscription
- 重导出订阅系统类型(Subscription、SubscriberSet 等) 订阅句柄 - RGPUI 中事件订阅的 RAII 管理器。
- Surface
- 重导出所有内置元素类型 一个 surface 元素。
- Svg
- 重导出所有内置元素类型 SVG 元素,用于渲染 SVG 矢量图形。
- SvgRenderer
- 重导出 SVG 渲染器相关类型 包含渲染 SVG 所需一切的结构体。
- Switch
- 重导出所有内置元素类型 可切换开/关的开关(Switch)元素。
- System
Window TabController - 重导出 App 核心模块(App、Context、Entity、EntityId 等) 管理窗口标签页的控制器。
- Tab
- 重导出根视图
Tab动作。 - TabPrev
- 重导出根视图
TabPrev动作。 - Tag
- 重导出所有内置元素类型 Tag 是一个小型状态指示器。
- Text
- 重导出所有内置元素类型
渲染文本的
Element。 - Text
Layout - 重导出所有内置元素类型 TextElement 的布局。可用于将索引映射到像素反之亦然。
- TextRun
- 重导出文本系统相关类型
带样式的文本段,用于
crate::TextLayout。 - Text
Style - 重导出样式类型(Style、Display、Position 等) 可用于在 RGPUI 中设置文本样式的属性
- Text
Style Refinement - 重导出样式类型(Style、Display、Position 等)
[
#ident] 的可细化版本,详见该文档。 - Text
System - 重导出文本系统相关类型 RGPUI 文本渲染子系统。
- TileId
- 重导出平台抽象层相关类型 图集瓦片的唯一标识符,封装 etagere 分配器的序列化 ID。
- Tiling
- 重导出平台抽象层相关类型 描述窗口各边当前的平铺状态
- Titlebar
Options - 重导出平台抽象层相关类型 窗口标题栏可配置的选项
- Toast
- 重导出所有内置元素类型 Toast 通知结构体
- Toast
Stack - 重导出所有内置元素类型 Toast 通知堆栈实体
- Tooltip
- 重导出所有内置元素类型 工具提示元素,可显示文本或自定义内容,支持可选的快捷键信息。
- Tooltip
Id - 重导出窗口系统类型 工具提示的标识符。
- Tooltip
Overlay - 重导出所有内置元素类型 管理 tooltip 生命周期:延迟、宽限期、动画和渲染。
- Touch
Click Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 由触摸屏上识别的轻触手势生成的点击事件。
- Touch
Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的原始触摸事件。
- TouchId
- 重导出交互系统相关类型(Focusable、ClickArea 等)
标识一个触摸(手指或触控笔接触)的整个生命周期,
从
TouchPhase::Started到TouchPhase::Ended或TouchPhase::Cancelled。 - Transformation
- 重导出所有内置元素类型 应用于 SVG 元素的变换参数。
- Transformation
Matrix - 重导出场景系统相关类型 表示可应用于元素的二维变换的数据类型。
- Transition
- 重导出过渡动画系统 可组合的过渡动画,描述动画样式变化。
- Tray
- 重导出系统托盘相关类型 系统托盘图标
- Tray
Icon Data - 重导出系统托盘相关类型 渲染后的图标数据,供平台使用
- UTF16
Selection - 重导出平台抽象层相关类型 表示文本缓冲区中的选区,以 UTF16 字符为单位。 与 Range 不同,选区的头部可能在尾部之前。
- Unbind
- 重导出所有 Action 相关类型 具有特殊处理的动作,当同一按键序列触发指定动作时, 它会解除后续绑定,无论该动作的上下文如何。
- Underline
- 重导出场景系统相关类型 下划线图元 — 支持直线和波浪线样式。
- Underline
Style - 重导出样式类型(Style、Display、Position 等) 可以应用于下划线的属性。
- Underline
Style Refinement - 重导出样式类型(Style、Display、Position 等)
[
#ident] 的可细化版本,详见该文档。 - Uniform
List - 重导出所有内置元素类型 用于高效布局和显示等高元素列表的列表元素。
- Uniform
List Frame State - 重导出所有内置元素类型 UniformList 使用的帧状态。
- Uniform
List Scroll Handle - 重导出所有内置元素类型 用于控制均匀列表滚动位置的句柄。 应将其存储在视图中,并在每帧传递给 uniform_list。
- Uniform
List Scroll State - 重导出所有内置元素类型 均匀列表的滚动状态,管理滚动句柄和延迟滚动参数。
- Util
Deferred - 重导出 rgpui_util 中的常用工具(defer、log_err、measure 等) 丢弃时运行闭包的守卫,除非被中止
- Virtual
List - 重导出所有内置元素类型 用于渲染大量不同尺寸条目的虚拟列表组件。
- Virtual
List Frame State - 重导出所有内置元素类型 [VirtualItem] 使用的帧状态。
- Virtual
List Scroll Handle - 重导出所有内置元素类型
VirtualList的滚动句柄。 - Weak
Entity - 重导出 App 核心模块(App、Context、Entity、EntityId 等) 指向给定类型实体的弱引用。
- Weak
Focus Handle - 重导出窗口系统类型 焦点句柄的弱引用。
- Window
- 重导出窗口系统类型 保存特定窗口的状态。
- Window
Button Layout - 重导出平台抽象层相关类型
描述标题栏每侧出现的
WindowButton。 - Window
Controls - 重导出平台抽象层相关类型 平台支持的窗口控件
- Window
Handle - 重导出窗口系统类型 具有特定根视图类型的窗口句柄。 注意这不会单独保持窗口存活。
- Window
Id - 重导出窗口系统类型 窗口的唯一标识符。
- Window
Options - 重导出平台抽象层相关类型 创建窗口时可配置的变量
- Window
Params - 重导出平台抽象层相关类型 创建窗口时的配置参数。
- Window
Text System - 重导出文本系统相关类型 RGPUI 文本布局子系统。
- Wrap
Boundary - 重导出文本系统相关类型 行被换行时的换行边界
- Wrapped
Line - 重导出文本系统相关类型 由文本布局系统塑形、装饰和换行的文本行
- Wrapped
Line Layout - 重导出文本系统相关类型 已换行以适应给定宽度的文本行
Enums§
- Absolute
Length - 重导出几何类型(Point、Size、Bounds 等) 表示以像素或 rem 为单位的绝对长度。
- Accessible
Action - 无障碍访问动作类型重导出 An action to be taken on an accessibility node.
- Action
Build Error - 重导出所有 Action 相关类型
Keystroke::parse的错误类型。使用此类型而非anyhow::Error,以便 Zed 可以使用 markdown 来显示它。 - Align
Content - 重导出样式类型(Style、Display、Position 等) 设置内容之间和周围的空间分布 对于 Flexbox,它控制交叉轴中的对齐 对于 Grid,它控制块轴中的对齐
- Align
Items - 重导出样式类型(Style、Display、Position 等) 用于控制子节点的对齐方式。 对于 Flexbox,控制交叉轴中的对齐 对于 Grid,控制块轴中的对齐
- Anchor
- 重导出几何类型(Point、Size、Bounds 等) 标识二维盒子上的参考点,用于锚定定位元素。
- Anchored
FitMode - 重导出所有内置元素类型 将锚定元素适配到窗口内时使用的算法。
- Anchored
Position Mode - 重导出所有内置元素类型 定位锚定元素时使用的算法。
- ArcCow
- 重导出 ArcCow - 引用计数的写时复制智能指针 基于 Arc 的写时复制智能指针
- Asset
Logger - 重导出资源缓存相关类型
资产加载器,在加载期间记录
Result的Err变体日志 - Atlas
Key - 重导出平台抽象层相关类型 精灵图集的缓存键,标识一种可渲染的图元(字形、SVG 或图像)。
- Atlas
Texture Kind - 重导出平台抽象层相关类型 图集纹理的内容类型,决定颜色格式和渲染路径。
- Attention
Type - 重导出平台抽象层相关类型 用户注意力请求类型
- Available
Space - 重导出 Taffy 布局引擎类型(AvailableSpace、LayoutId) 元素可用于布局的空间
- Axis
- 重导出几何类型(Point、Size、Bounds 等) 二维笛卡尔空间中的轴。
- Biometric
Status - 重导出平台抽象层相关类型 生物识别状态
- Blend
Mode - 重导出场景系统相关类型 渲染四边形时应用的混合模式。
- Border
Style - 重导出场景系统相关类型 边框的样式。
- Button
Rounded - 重导出所有内置元素类型 按钮圆角设置。
- Button
Variant - 重导出所有内置元素类型 按钮变体。
- Click
Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 点击事件,当鼠标按键或键盘按键按下并释放时生成, 或当触摸屏上识别到轻触手势时生成。
- Clipboard
Entry - 重导出平台抽象层相关类型 剪贴板字符串或剪贴板图像
- Color
Space - 重导出颜色类型(Hsla、Rgba、HslOverride 等) 用于颜色插值的颜色空间。
- Cursor
Hide Mode - 重导出 App 核心模块(App、Context、Entity、EntityId 等) 控制 RGPUI 在响应键盘输入时何时隐藏鼠标光标。
- Cursor
Style - 重导出平台抽象层相关类型 光标(指针)样式
- Decorations
- 重导出平台抽象层相关类型 描述窗口当前装饰配置的类型
- Definite
Length - 重导出几何类型(Point、Size、Bounds 等) 非自动长度,可用像素、rem 或父元素百分比定义。
- Dialog
Type - 重导出平台抽象层相关类型 对话框类型
- Dispatch
Phase - 重导出窗口系统类型 表示事件分发时的两个不同阶段。
- Display
- 重导出样式类型(Style、Display、Position 等) 设置此节点子项使用的布局
- Element
Id - 重导出窗口系统类型
Element的标识符。 - Element
Size - 元素尺寸枚举,用于统一组件的大小规格。
- Field
Builder - 重导出表单组件 字段的构建器,可以是字符串、渲染函数或视图。
- File
Drop Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的文件拖放事件,当文件被拖放到窗口上时生成。
- Fill
- 重导出样式类型(Style、Display、Position 等) 可以应用于形状的填充类型。
- Fill
Rule - The fill rule defines how to determine what is inside and what is outside of the shape.
- Flex
Direction - 重导出样式类型(Style、Display、Position 等) flexbox 布局主轴的方向。
- Flex
Wrap - 重导出样式类型(Style、Display、Position 等) 控制 flex 项目是否强制放在一行或可以换行到多行。
- Follow
Mode - 重导出所有内置元素类型 控制列表是否自动跟随末尾的新内容。
- Font
Style - 重导出文本系统相关类型 允许选择斜体或倾斜字体。
- Grid
Placement - 重导出几何类型(Point、Size、Bounds 等) 项目在网格布局列或行中的放置方式。
- Grid
Template MinSize - 重导出样式类型(Style、Display、Position 等) 网格布局中列或行的最小尺寸
- Highlights
Match - 重导出所有内置元素类型 表示标签文本高亮的匹配类型。
- Hitbox
Behavior - 重导出窗口系统类型 hitbox 如何影响鼠标行为。
- Icon
Name - 重导出所有内置元素类型
内置图标名称枚举,由
icon_named!宏根据 SVG 目录生成。IconName:内置图标名称。 - Image
Asset Loader - 重导出所有内置元素类型 RGPUI 资源系统的图像加载器
- Image
Cache Error - 重导出所有内置元素类型 与图像缓存交互时可能发生的错误。
- Image
Cache Item - 重导出所有内置元素类型 一个图像缓存项
- Image
Format - 重导出平台抽象层相关类型 编辑器支持的图像格式之一(如 PNG、JPEG)- 用于处理剪贴板中的图像
- Image
Source - 重导出所有内置元素类型 图像内容的来源。
- KeyBinding
Context Predicate - 重导出快捷键映射相关类型 用于解析是否应分发动作的数据结构。 表示一种小型语言,用于描述哪些上下文对应哪些动作。
- Keyboard
Button - 重导出交互系统相关类型(Focusable、ClickArea 等) 表示点击事件中按下的键盘按键的枚举。
- Length
- 重导出几何类型(Point、Size、Bounds 等) 可用像素、rem、父元素百分比或 auto 定义的长度。
- Line
Fragment - 重导出文本系统相关类型 可以包装的行片段。
- List
Alignment - 重导出所有内置元素类型 列表是从上到下还是从下到上滚动。
- List
Horizontal Sizing Behavior - 重导出所有内置元素类型 布局期间应用的水平尺寸调整行为。
- List
Measuring Behavior - 重导出所有内置元素类型 布局期间应用的测量行为。
- List
Sizing Behavior - 重导出所有内置元素类型 布局期间应用的尺寸调整行为。
- Menu
Item - 重导出平台抽象层相关类型 菜单中可以的不同类型的菜单项
- Mouse
Button - 重导出交互系统相关类型(Focusable、ClickArea 等) 表示按下的鼠标按键的枚举。
- Navigation
Direction - 重导出交互系统相关类型(Focusable、ClickArea 等) 导航方向,如前进或后退。
- Network
Status - 重导出平台抽象层相关类型 网络状态
- Object
Fit - 重导出样式类型(Style、Display、Position 等) 图像如何适应元素边界的方式。
- Orientation
- 无障碍访问枚举类型重导出(方向、角色、切换状态)
- OsAction
- 重导出平台抽象层相关类型 操作系统操作,由操作系统识别 这允许操作系统为这些操作提供专门的行为
- Overflow
- 重导出样式类型(Style、Display、Position 等) 子元素溢出容器时如何影响布局
- Owned
Menu Item - 重导出平台抽象层相关类型 菜单中可以的不同类型的菜单项
- Path
Style - 重导出路径构建器 PathBuilder 的样式
- Permission
Status - 重导出平台抽象层相关类型 权限状态
- Permission
Type - 重导出平台抽象层相关类型 权限类型(用于描述应用在系统中申请的权限类别)
- Placement
- 元素放置位置枚举,用于定义元素在四个边缘的放置方向。
- Platform
Input - 重导出交互系统相关类型(Focusable、ClickArea 等) 对应所有平台输入事件类型的枚举。
- Position
- 重导出样式类型(Style、Display、Position 等) 此项目的定位策略。
- Power
Save Blocker Kind - 重导出平台抽象层相关类型 电源阻止器类型
- Pressure
Stage - 重导出交互系统相关类型(Focusable、ClickArea 等) 压力点击事件的阶段。
- Primitive
- 重导出场景系统相关类型 渲染图元 — 场景中所有可绘制元素的枚举。
- Primitive
Batch - 重导出场景系统相关类型 图元批处理 — 按类型分组的图元索引范围,用于 GPU 批量绘制。
- Prompt
Button - 重导出平台抽象层相关类型 提示对话框按钮
- Prompt
Level - 重导出平台抽象层相关类型 提示样式类型
- Quit
Mode - 重导出 App 核心模块(App、Context、Entity、EntityId 等) 定义应用自动退出的时机。
- Resize
Edge - 重导出平台抽象层相关类型 窗口调整大小的边缘方向
- Resource
- 重导出资源缓存相关类型 表示资源来源的枚举。
- Role
- 无障碍访问枚举类型重导出(方向、角色、切换状态) The type of an accessibility node.
- Scroll
Delta - 重导出交互系统相关类型(Focusable、ClickArea 等) 滚轮事件的滚动增量。
- Scroll
Strategy - 重导出所有内置元素类型 滚动元素的放置位置。
- Scrollbar
Axis - 重导出所有内置元素类型 滚动条轴向。
- Separator
Style - 重导出所有内置元素类型 分隔线的样式。
- Side
- 侧边方向枚举,用于组件中指定左/右位置。
- Slider
Event - 重导出所有内置元素类型
SliderState发出的事件。 - Slider
Scale - 重导出所有内置元素类型 滑块的刻度模式。
- Slider
Value - 重导出所有内置元素类型 滑块的值,可以是单个值或值范围。
- Surface
Source - 重导出所有内置元素类型 surface 内容的来源。
- SvgSize
- 重导出 SVG 渲染器相关类型 SVG 的渲染尺寸。
- System
Menu Type - 重导出平台抽象层相关类型 系统菜单类型
- System
Power Event - 重导出平台抽象层相关类型 系统电源事件
- TagVariant
- 重导出所有内置元素类型 Tag 的变体。
- Text
Align - 重导出样式类型(Style、Display、Position 等) 如何对齐元素内的文本
- Text
Overflow - 重导出样式类型(Style、Display、Position 等) 如何截断超出元素宽度的文本
- Text
Rendering Mode - 重导出平台抽象层相关类型 绘制字形时使用的文本渲染模式。
- Thermal
State - 重导出平台抽象层相关类型 系统热状态
- Toast
Position - 重导出所有内置元素类型 Toast 位置枚举
- Toggled
- 无障碍访问枚举类型重导出(方向、角色、切换状态)
- Touch
Phase - 重导出交互系统相关类型(Focusable、ClickArea 等) 触摸移动事件的阶段。 基于 winit 的同名枚举。
- Tray
Icon Event - 重导出系统托盘相关类型 系统托盘图标事件类型
- Tray
Menu Item - 重导出系统托盘相关类型 系统托盘菜单项类型
- Truncate
From - 重导出文本系统相关类型 确定从开头、结尾还是中间截断文本。
- Visibility
- 重导出样式类型(Style、Display、Position 等)
类似于 CSS
visibility属性的可见性值 - White
Space - 重导出样式类型(Style、Display、Position 等) 如何处理文本中的空白字符
- Window
Appearance - 重导出平台抽象层相关类型 窗口的外观,由操作系统定义。
- Window
Background Appearance - 重导出平台抽象层相关类型 窗口本身的背景外观,在没有内容或内容透明时显示。
- Window
Bounds - 重导出平台抽象层相关类型 表示窗口打开时应处于的状态
- Window
Button - 重导出平台抽象层相关类型
WindowButtonLayout中使用的窗口控制按钮类型。 - Window
Control Area - 重导出窗口系统类型 对应平台窗口的窗口控制区域类型。
- Window
Decorations - 重导出平台抽象层相关类型 描述窗口外观类型的枚举
- Window
Kind - 重导出平台抽象层相关类型 要创建的窗口类型
- Window
Position - 重导出平台抽象层相关类型 语义化窗口位置,用于计算窗口的屏幕位置
Constants§
- DEFAULT_
ADDITIONAL_ WINDOW_ SIZE - 重导出窗口系统类型 6:5 宽高比的最小窗口尺寸,用于功能性附加窗口(如设置和规则库窗口)。
- DEFAULT_
WINDOW_ SIZE - 重导出窗口系统类型 未指定窗口大小时使用的默认尺寸。
- KEYSTROKE_
PARSE_ EXPECTED_ MESSAGE - 重导出平台抽象层相关类型 按键解析器期望的格式说明,以 “Expected …” 开头
- LOADING_
DELAY - 重导出所有内置元素类型 显示加载状态前的延迟。
- MAX_
BUTTONS_ PER_ SIDE - 重导出平台抽象层相关类型
标题栏每侧最大的
WindowButton数量。 - SHUTDOWN_
TIMEOUT - 重导出 App 核心模块(App、Context、Entity、EntityId 等) 应用完全退出前,Context::on_app_quit 返回的 future 可运行的最大时长。
- SMOOTH_
SVG_ SCALE_ FACTOR - 重导出 SVG 渲染器相关类型 渲染 SVG 时,我们以两倍大小渲染以获得更高质量的结果。
- SUBPIXEL_
VARIANTS_ X - 重导出文本系统相关类型 X 轴方向的亚像素字形变体数量。
- SUBPIXEL_
VARIANTS_ Y - 重导出文本系统相关类型 Y 轴方向的亚像素字形变体数量。
Statics§
- ANIMATION_
DURATION - 重导出对话框组件 对话框动画时长(秒)。
Traits§
- Action
- 重导出所有 Action 相关类型 动作用于实现键盘驱动的 UI。声明动作后,可以在键映射中将按键绑定到该动作, 并在元素树中为该动作设置监听器。
- Along
- 重导出几何类型(Point、Size、Bounds 等) 沿特定轴访问对应单位的 trait。
- Animation
Ext - 重导出所有内置元素类型 一个扩展 trait,用于为元素和组件添加动画包装器。
- AppContext
- 应用上下文 trait - RGPUI 中最核心的 trait,允许不同的上下文类型在某些操作中互换使用。
- AsKeystroke
- 重导出平台抽象层相关类型 这是一个辅助 trait,用于简化某些函数的实现
- Asset
- 重导出资源缓存相关类型 异步资产加载的 trait。
- Asset
Source - 重导出资源加载相关类型 应用程序使用的资源来源。
- AxisExt
- 用于扩展
crate::Axis的便捷方法。 - Borrow
AppContext - 应用上下文借用 trait - 为可以互换使用的上下文自动实现全局状态管理方法。
- Button
Variants - 重导出所有内置元素类型 按钮变体 trait,提供设置各种变体样式的方法。
- Child
Element - 重导出所有内置元素类型 可携带索引的子元素 trait。
- Dialog
Footer Button - 重导出对话框组件 对话框按钮辅助 trait,用于标记取消/确认按钮。
- Disableable
- 定义可以被禁用的元素 trait。
- Element
- 重导出元素系统核心类型 参与窗口内容布局和绘制的类型需实现此特征。 元素形成一棵树,按照 Taffy 实现的 Web 布局规则进行布局。 可通过实现此特征创建自定义元素,详见模块文档。
- Element
Ext - 重导出所有内置元素类型
用于扩展
crate::ParentElement元素的额外功能。 - Entity
Input Handler - 重导出输入事件相关类型 实现此 trait 以允许视图在实现编辑器、字段等时处理文本输入。
- Event
Emitter - 事件发射器 trait - 用于绑定实体类型与其可发出的事件类型。
- Focus
Trap Element - 重导出焦点陷阱能力(FocusTrapElement、FocusTrapContainer)
为交互元素添加
focus_trap能力的扩展 trait。 - Focusable
- 重导出窗口系统类型 Focusable 允许视图的用户轻松聚焦它 (使用 window.focus_view(cx, view))
- Focusable
Ext - 为可聚焦元素添加焦点光环(focus ring)的 trait。
- Gesture
Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的手势事件。
- Global
- 重导出全局状态相关类型 全局状态标记 trait - 实现此 trait 的类型可以存储在 RGPUI 的全局状态中。
- Half
- 重导出几何类型(Point、Size、Bounds 等) 提供可以计算值一半的 trait。
- Icon
Named - 重导出所有内置元素类型
实现该 trait 的类型可以自动转换为
Icon。 - Image
Cache - 重导出所有内置元素类型 一个可处理图像缓存和卸载的对象。 此 trait 的实现应确保图像在不再需要时从所有窗口中移除。
- Image
Cache Provider - 重导出所有内置元素类型 一个可在渲染阶段创建 ImageCache 的对象。 有关更多信息,请参阅 ImageCache trait。
- Input
Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台输入源的事件。
- Input
Handler - 重导出平台抽象层相关类型 Zed 的平台 IME 系统文本输入处理接口。 目前是 NSTextInputClient API 的 1:1 映射:
- Interactive
Element - 重导出所有内置元素类型 希望使用标准 RGPUI 事件处理器且不需要任何状态的元素的 trait。
- Interactive
Element Ext - 重导出所有内置元素类型
用于扩展
crate::InteractiveElement的额外事件方法。 - Into
Element - 重导出元素系统核心类型 可转换为元素的类型需实现此特征。
- IsZero
- 重导出几何类型(Point、Size、Bounds 等) 用于检查值是否为零的 trait。
- KeyEvent
- 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的按键事件。
- Lerp
- 重导出过渡动画系统 支持线性插值的类型。
- Managed
View - 重导出窗口系统类型 ManagedView 是一种视图(如 Modal、Popover、Menu 等), 其生命周期由另一个视图管理。
- Mouse
Event - 重导出交互系统相关类型(Focusable、ClickArea 等) 来自平台的鼠标事件。
- Parent
Element - 重导出元素系统核心类型 辅助特征,为可接受任意数量和类型子元素的元素提供统一接口。
- Platform
- 重导出平台抽象层相关类型 跨平台应用抽象层,由各平台 crate(rgpui-windows、rgpui-macos、rgpui-linux、rgpui-web)实现。
- Platform
Atlas - 重导出平台抽象层相关类型 平台精灵图集抽象 — 管理 GPU 纹理中的图元缓存(字形、SVG、图像)。
- Platform
Display - 重导出平台抽象层相关类型 平台显示器句柄,代表一个物理显示器或笔记本屏幕。
- Platform
Gestures - 重导出手势识别相关类型 平台手势识别服务。
- Platform
Keyboard Layout - 重导出平台抽象层相关类型 平台特定键盘布局的 trait
- Platform
Keyboard Mapper - 重导出平台抽象层相关类型 平台特定键盘映射的 trait
- Platform
Text System - 重导出平台抽象层相关类型 平台文本系统抽象 — 提供字体加载、字形光栅化、文本排版等能力。各平台需实现此 trait。
- Platform
Window - 重导出平台抽象层相关类型 平台原生窗口抽象,由各平台 crate 实现,提供窗口管理、输入、渲染等能力。
- Prompt
- 重导出窗口系统类型 可在窗口中渲染的提示
- Read
Global - 重导出全局状态相关类型 从上下文中读取全局值的 trait。
- Render
- 重导出元素系统核心类型
可绘制到屏幕的对象。此特征区分“视图“与其他实体。
视图是实现了
Render并绘制到屏幕的Entity。 - Render
Once - 重导出元素系统核心类型
可对实现此特征的类型派生
IntoElement。 用于从纯数据构建可复用的组件。组件即特定元素模式的配方。 RenderOnce 允许调用此模式,同时保持元素 API 的流式构建器风格。 - Result
Ext - 重导出 rgpui_util 中的常用工具(defer、log_err、measure 等) Result 类型的扩展特征,提供日志工具
- Screen
Capture Source - 重导出平台抽象层相关类型 可被捕获的屏幕视频内容源。
- Screen
Capture Stream - 重导出平台抽象层相关类型 从屏幕捕获的视频流。
- Scrollable
Element - 重导出所有内置元素类型 可滚动元素的扩展 trait。
- Scrollbar
Handle - 重导出所有内置元素类型 可被滚动条读取和设置偏移量的滚动句柄 trait。
- Selectable
- 定义可以被选中的元素 trait。
- Sizable
- 定义元素尺寸的 trait,默认使用
Size::Medium。 - Stateful
Interactive Element - 重导出所有内置元素类型 希望使用需要状态的标准 RGPUI 交互功能的元素的 trait。
- Style
Sized - 应用元素尺寸相关样式的 trait。
- Styled
- 重导出样式化 trait 可设置样式的元素的 trait。 使用此功能可选择使用实用程序 CSS 类似样式 API。
- Styled
Ext - 扩展
crate::Styled的特定样式方法。 - Styled
Image - 重导出所有内置元素类型 设置图像元素的样式。
- TaskExt
- 重导出执行器类型(ForegroundExecutor、BackgroundExecutor)
Task<Result<T, E>>的扩展 trait,添加了带有&App上下文的detach_and_log_err。 - TryFuture
Ext - 重导出 rgpui_util 中的常用工具(defer、log_err、measure 等) Future 类型的扩展特征,提供日志工具
- TryFuture
ExtBacktrace - 重导出 rgpui_util 中的常用工具(defer、log_err、measure 等) Future 类型的扩展特征,提供回溯日志
- Uniform
List Decoration - 重导出所有内置元素类型
UniformList的装饰物。可用于渲染缩进指南或其他视觉效果。 - Update
Global - 重导出全局状态相关类型 在上下文中更新全局值的 trait。
- View
- 重导出视图系统类型
参与 RGPUI 响应式图的可渲染物 — 这是
Render和RenderOnce背后的统一模型。 - Visual
Context - 可视化上下文 trait - RGPUI 中需要窗口才能运行的上下文类型。
- Window
Ext - 重导出窗口扩展 trait
为
Window添加对话框等功能的扩展 trait。
Functions§
- anchored
- 重导出所有内置元素类型 创建一个会避免超出窗口边界的锚定元素。 子元素不应有 margin,以避免测量问题。
- auto
- 重导出几何类型(Point、Size、Bounds 等)
返回表示自动长度的
Length。 - black
- 重导出颜色类型(Hsla、Rgba、HslOverride 等)
Hsla中的纯黑色 - block_
on - 重导出 pollster::block_on 用于在同步上下文中阻塞等待异步任务 Block the thread until the future is ready.
- blue
- 重导出颜色类型(Hsla、Rgba、HslOverride 等)
Hsla中的蓝色 - bounce
- 重导出所有内置元素类型 应用给定的缓动函数,先正向再反向
- bounds
- 重导出几何类型(Point、Size、Bounds 等) 使用给定的原点和尺寸创建一个 bounds
- box_
shadow - 创建一个 CSS 风格的对象阴影
BoxShadow。 - canvas
- 重导出所有内置元素类型 使用给定的绘制回调构造画布元素。 适用于向视图添加短期自定义绘制。
- checkerboard
- 重导出颜色类型(Hsla、Rgba、HslOverride 等) 创建棋盘图案背景
- combine_
highlights - 重导出样式类型(Style、Display、Position 等) 组合并合并两个迭代器中的高亮和范围。
- conic_
gradient - 重导出颜色类型(Hsla、Rgba、HslOverride 等) 创建锥形(扫描)渐变背景。
- container_
query - 重导出所有内置元素类型 使用给定的渲染回调构造容器查询元素。 回调接收布局期间分配给元素的大小, 并返回要在其中显示的内容。
- cubic_
bezier - 重导出过渡动画系统
三次贝塞尔缓动函数,类似 CSS
cubic-bezier。 - defer
- 重导出 rgpui_util 中的常用工具(defer、log_err、measure 等) 运行给定函数,当返回值被丢弃时(除非被中止)
- deferred
- 重导出所有内置元素类型
构建一个
Deferred元素,延迟其子元素的布局和绘制。 - div
- 重导出所有内置元素类型
构建一个新的
Div元素 - ease_
in_ cubic - 重导出过渡动画系统 三次缓入——缓慢开始,快速结束。适合退出动画。
- ease_
in_ out - 重导出所有内置元素类型 二次缓入缓出函数,起始和结束较慢,中间加速
- ease_
in_ out_ cubic - 重导出过渡动画系统 三次缓入缓出——开始和结束都缓慢。适合位置过渡动画。
- ease_
out_ cubic - 重导出过渡动画系统 三次缓出——快速开始,缓慢结束。适合进入动画。
- ease_
out_ quint - 重导出所有内置元素类型 Quint 缓出函数,起始快速后减速至停止
- fallback_
prompt_ renderer - 重导出窗口系统类型 使用此函数与 App::set_prompt_builder 结合,可强制 RGPUI 始终使用回退提示渲染器
- field
- 重导出表单组件 创建一个新的表单字段。
- fill
- 重导出窗口系统类型 使用给定边界和背景颜色创建填充四边形。
- font
- 重导出文本系统相关类型
根据给定名称获取
Font。 - font_
name_ with_ fallbacks - 重导出文本系统相关类型 将已知的虚拟字体名称映射到其实际等效字体。
- font_
name_ with_ fallbacks_ shared - 重导出文本系统相关类型
类似
font_name_with_fallbacks,但接受和返回SharedString引用。 - generate_
list_ of_ all_ registered_ actions - 重导出所有 Action 相关类型 生成所有已注册动作的列表。 适用于将可用动作列表转换为适合静态分析的格式, 例如验证键映射或生成文档。
- get_
gamma_ correction_ ratios - 重导出平台抽象层相关类型 计算亚像素文本渲染的伽马校正比率。
- green
- 重导出颜色类型(Hsla、Rgba、HslOverride 等)
Hsla中的绿色 - guess_
compositor - 重导出平台抽象层相关类型 返回当前使用的合成器名称(猜测), 不会尝试连接到指定的合成器。
- h_flex
- 返回一个水平 flex 布局的
Div。 - h_form
- 重导出表单组件 创建一个水平布局的新表单。
- h_
virtual_ list - 重导出所有内置元素类型
创建水平方向的
VirtualList。 - hash
- 重导出资源缓存相关类型 使用快速、非加密安全的哈希函数从数据获取标识符
- horizontal_
scroll_ area - 重导出所有内置元素类型 只消费水平滚轮增量的水平滚动视口。
- hsla
- 重导出颜色类型(Hsla、Rgba、HslOverride 等)
使用普通值构造
Hsla对象 - image_
cache - 重导出所有内置元素类型
一个图像缓存元素,其所有子 img 元素将使用此元素指定的缓存。
注意这可以简单地传递
Entity<T: ImageCache> - img
- 重导出所有内置元素类型 创建一个新的图像元素。
- is_
no_ action - 重导出所有 Action 相关类型 返回此动作是否表示已移除的键绑定。
- is_
unbind - 重导出所有 Action 相关类型 返回此动作是否表示解除绑定标记。
- linear
- 重导出所有内置元素类型 线性缓动函数,即 delta 本身
- linear_
color_ stop - 重导出颜色类型(Hsla、Rgba、HslOverride 等) 创建新的线性颜色停止点。
- linear_
gradient - 重导出颜色类型(Hsla、Rgba、HslOverride 等) 创建 LinearGradient 背景颜色。
- list
- 重导出所有内置元素类型 创建一个新的列表元素
- log_err
- 重导出 rgpui_util 中的常用工具(defer、log_err、measure 等)
- measure
- 重导出 rgpui_util 中的常用工具(defer、log_err、measure 等)
如果设置了
ZED_MEASUREMENTS环境变量,则测量闭包的执行时间 - multi_
stop_ linear_ gradient - 重导出颜色类型(Hsla、Rgba、HslOverride 等) 创建最多 4 个颜色停止点的线性渐变。
- opaque_
grey - 重导出颜色类型(Hsla、Rgba、HslOverride 等)
Hsla中的不透明灰色,值将被限制在 [0, 1] 范围内 - outline
- 重导出窗口系统类型 使用给定边界、边框颜色和 1px 边框宽度创建矩形轮廓
- pattern_
slash - 重导出颜色类型(Hsla、Rgba、HslOverride 等) 创建哈希图案背景
- percentage
- 重导出几何类型(Point、Size、Bounds 等)
从完整圆的百分比生成一个
Radians。 - phi
- 重导出几何类型(Point、Size、Bounds 等)
返回黄金比例,即
~(1.0 + sqrt(5.0)) / 2.0。 - point
- 重导出几何类型(Point、Size、Bounds 等)
使用给定的 x 和 y 坐标构造一个新的
Point<T>。 - post_
inc - 重导出 rgpui_util 中的常用工具(defer、log_err、measure 等) 递增一个值并返回先前的值
- pulsating_
between - 重导出所有内置元素类型 用于脉动 alpha 值的自定义缓动函数,在接近 0.1 时减速
- px
- 重导出几何类型(Point、Size、Bounds 等)
构造表示以像素为单位长度的
Pixels值。 - quad
- 重导出窗口系统类型 使用给定参数创建四边形。
- quadratic
- 重导出所有内置元素类型 二次缓动函数,delta * delta
- radial_
gradient - 重导出颜色类型(Hsla、Rgba、HslOverride 等) 创建径向渐变背景。
- radians
- 重导出几何类型(Point、Size、Bounds 等)
从原始值创建一个
Radians。 - red
- 重导出颜色类型(Hsla、Rgba、HslOverride 等)
Hsla中的红色 - relative
- 重导出几何类型(Point、Size、Bounds 等)
构造表示父元素尺寸相对比例的
DefiniteLength。 - rems
- 重导出几何类型(Point、Size、Bounds 等)
构造表示以 rem 为单位长度的
Rems值。 - retain_
all - 重导出所有内置元素类型 构造一个保留所有的图像缓存,使用与给定 ID 关联的元素状态。
- rgb
- 重导出颜色类型(Hsla、Rgba、HslOverride 等) 将 RGB 十六进制颜色代码转换为颜色类型
- rgba
- 重导出颜色类型(Hsla、Rgba、HslOverride 等)
将 RGBA 十六进制颜色代码转换为
Rgba - size
- 重导出几何类型(Point、Size、Bounds 等)
使用给定的宽度和高度构造一个新的
Size<T>。 - solid_
background - 重导出颜色类型(Hsla、Rgba、HslOverride 等) 创建纯色背景颜色。
- some_
or_ debug_ panic - 重导出 rgpui_util 中的常用工具(defer、log_err、measure 等) 返回选项值,如果在调试模式下为 None 则 panic
- svg
- 重导出所有内置元素类型 创建一个新的 SVG 元素。
- swap_
rgba_ pa_ to_ bgra - 重导出颜色类型(Hsla、Rgba、HslOverride 等) 从预乘 alpha 的 RGBA 转换为 BGRA
- transparent_
black - 重导出颜色类型(Hsla、Rgba、HslOverride 等)
Hsla中的透明黑色 - transparent_
white - 重导出颜色类型(Hsla、Rgba、HslOverride 等)
Hsla中的透明白色 - uniform_
list - 重导出所有内置元素类型 uniform_list 为一组等高元素提供延迟渲染。 当渲染到设置了 overflow-y: hidden 和固定(或最大)高度的容器中时, uniform_list 只会渲染可见子集的元素。
- v_flex
- 返回一个垂直 flex 布局的
Div。 - v_form
- 重导出表单组件 创建一个垂直布局的新表单。
- v_
virtual_ list - 重导出所有内置元素类型
创建垂直方向的
VirtualList。 - white
- 重导出颜色类型(Hsla、Rgba、HslOverride 等)
Hsla中的纯白色 - window_
paddings - 重导出窗口边框工具 获取窗口内容的内边距。
- yellow
- 重导出颜色类型(Hsla、Rgba、HslOverride 等)
Hsla中的黄色
Type Aliases§
- Align
Self - 重导出样式类型(Style、Display、Position 等)
用于控制如何对齐指定的节点。
覆盖父节点的
AlignItems属性。 对于 Flexbox,它控制交叉轴中的对齐 对于 Grid,它控制块轴中的对齐 - Draw
Order - 重导出场景系统相关类型 绘制顺序值,数值越小越先绘制。
- Image
Loading Task - 重导出所有内置元素类型 与图像缓存关联的图像加载任务。
- ImgResource
Loader - 重导出所有内置元素类型
img()元素使用的资源加载器的类型别名。 - Inspector
Renderer - 重导出检查器相关类型
在
App上设置的用于渲染检查器 UI 的函数。 - Justify
Content - 重导出样式类型(Style、Display、Position 等) 设置内容之间和周围的空间分布 对于 Flexbox,它控制主轴中的对齐 对于 Grid,它控制内联轴中的对齐
- Justify
Items - 重导出样式类型(Style、Display、Position 等) 用于控制如何对齐子节点。 不适用于 Flexbox,如果在 flex 容器上指定将被忽略 对于 Grid,它控制内联轴中的对齐
- Justify
Self - 重导出样式类型(Style、Display、Position 等)
用于控制如何对齐指定的节点。
覆盖父节点的
JustifyItems属性。 不适用于 Flexbox,如果在 flex 子项上指定将被忽略 对于 Grid,它控制内联轴中的对齐 - Path
Vertex_ Scaled Pixels - 重导出场景系统相关类型
路径顶点的缩放像素类型别名(已废弃,使用
PathVertex<ScaledPixels>)。 - Result
- 重导出 anyhow::Result 作为统一错误类型
Result<T, Error> - Runnable
Variant - 重导出平台抽象层相关类型 带元数据的可运行任务类型别名。 之前是单变体枚举,现在简化为直接类型别名。
- Timer
Resolution Guard - 重导出平台抽象层相关类型
- Transform
- Alias for
euclid::default::Transform2D<f32>
Attribute Macros§
- bench
- 重导出 rgpui_macros 中的过程宏(AppContext、IntoElement、Render 等)
#[rgpui::bench]标注一个使用 RGPUI 支持的 Criterion 基准测试。 - ctor
- 重导出 ctor 宏,用于在程序启动前执行初始化函数
- property_
test - 重导出 rgpui_macros 中的过程宏(AppContext、IntoElement、Render 等)
#[rgpui::property_test]属性测试宏 - 支持基于属性的测试(property-based testing)。 - test
- 重导出 rgpui_macros 中的过程宏(AppContext、IntoElement、Render 等)
#[rgpui::test]测试属性宏 - 用于注解需要 RGPUI 支持的测试函数。
Derive Macros§
- Action
Action派生宏 - 用于为结构体自动实现rgpui::Action特质。- AppContext
- 重导出 rgpui_macros 中的过程宏(AppContext、IntoElement、Render 等)
AppContext派生宏 - 用于为持有&mut App的结构体生成应用上下文实现。 - Into
Element - 重导出 rgpui_macros 中的过程宏(AppContext、IntoElement、Render 等)
IntoElement派生宏 - 用于将实现了RenderOnce特质的类型转换为 UI 组件。 - Visual
Context - 重导出 rgpui_macros 中的过程宏(AppContext、IntoElement、Render 等)
VisualContext派生宏 - 用于为持有&mut Window并实现了AppContext的类型生成可视化上下文实现。