MujicaUI

Chat Input · #237

CitationBadge 浅色主题渲染快照
浅色 · 渲染快照
CitationBadge 深色主题渲染快照
深色 · 渲染快照

237 CitationBadge 引用编号

用途

行内引用编号;悬停预览来源;点击定位来源。

最小示例

var cites chat.CitationState
src := chat.Source{Title: "The Palace of Versailles", URL: "https://example.com/versailles"}
view := func(c *ui.Context) {
	core.Use(c, core.Settings{})
	if chat.CitationBadge(c, 1, src, &cites).Changed() {
		fmt.Println("show source", cites.Active)
	}
}
ui.Render(view, 400, 300, 1)

参数

n 为从 1 开始的引用编号;src.Title、src.URL 必填;st 为与来源卡片共享的 CitationState;Active=0 表示尚未选中。

状态

默认、悬停、键盘焦点与祖先禁用;业务状态由调用方提供。

事件

每次点击或键盘激活触发 ChoiceResult.Changed() 并定位来源;重复激活同一引用也会重新定位。

键盘操作

Tab 到引用;Enter、Space 定位;悬停或键盘焦点 500 毫秒后预览;Escape 关闭预览。

限制

编号按调用方引用顺序映射;预览内容来自调用方。