Yayin Story Studio logo Yayin Story Studio 项目文档
回到主页 用户手册

Visindigo 模块

Project Visindigo 的核心项目 “Visindigo”模块. 详情...

这个module 从 Visindigo 0.13.0 开始支持。

命名空间

Visindigo

内核模块根命名空间

Visindigo::General

内核模块适用编辑器和播放器的组件的命名空间

Visindigo::Utility

内核模块工具类命名空间

Visindigo::Widgets

内核模块中仅作QWidgets扩展的命名空间

Visindigo::General::ApplicationExceptionMessageHandler

Visindigo应用程序异常消息处理器接口类

Visindigo::General::ApplicationLoadingMessageHandler

Visindigo应用程序加载消息处理器接口类

Visindigo::General::CommandErrorData

此类表示命令执行过程中可能发生的错误信息

Visindigo::General::CommandHandler

此类提供了一个命令处理程序的接口,用于处理和补全命令行输入

Visindigo::General::CommandHost

此类提供了一个命令主机,用于注册和管理命令处理程序

Visindigo::General::Exception

异常类,用于表示和处理程序中的异常情况

Visindigo::General::LogMetaData

日志元数据类,用于存储日志消息的附加信息

Visindigo::General::Logger

日志记录器类,用于记录和管理日志消息

Visindigo::General::LoggerManager

LoggerManager是日志记录器管理器,用于管理全局日志对象并处理日志消息

Visindigo::General::LoggerMsgHandler

LoggerMsgHandler是日志消息处理器,用于承接日志消息并将其传递给LoggerManager进行处理

Visindigo::General::PlaceholderManager

PlaceManager提供一个全局的占位符解析系统,允许插件注册占位符提供者来动态生成文本内容

Visindigo::General::PlaceholderProvider

PlaceholderProvider是占位符提供者的基类,插件可以通过继承这个类来创建自己的占位符提供者

Visindigo::General::Plugin

此类为Visindigo提供插件基类

Visindigo::General::PluginManager

此类为Visindigo提供插件管理器

Visindigo::General::PluginModule

此类为Yayin Story Studio 提供插件模块基类

Visindigo::General::StacktraceFrame

堆栈跟踪帧数据类

Visindigo::General::StacktraceHelper

堆栈跟踪帮助类

Visindigo::General::TranslationHost

此类为YayinStoryStudio提供翻译管理器

Visindigo::General::Translator

Visindigo的翻译功能类,用于强化Qt自带的翻译功能

Visindigo::General::UpdateChainNode

此类为Visindigo提供更新链节点表示

Visindigo::General::VIApplication

Visindigo应用程序的根基,使用部分Visindigo功能必须首先初始化此类

Visindigo::General::Version

在现有主流版本号表示方法中找到的一个相对通用的方案

Visindigo::Utility::AsyncFunction

异步函数类模板

Visindigo::Utility::CodeDiff

此类用于表示代码差异

Visindigo::Utility::CodeLine

此类用于表示任何代码行

Visindigo::Utility::ColorTool

这类提供一些和颜色相关的工具函数

Visindigo::Utility::Console

此类为YayinStoryStudio提供初级的控制台快捷功能

Visindigo::Utility::DiffSequence

此类为Yayin Story Studio 提供差异比较的序列

Visindigo::Utility::DiffUnit

此类为Yayin Story Studio 提供差异比较的基类

Visindigo::Utility::ExtTool

此类为Yayin Story Studio 提供文件扩展名的相关操作

Visindigo::Utility::FileUtility

此类为Yayin Story Studio 提供文件操作的相关函数

Visindigo::Utility::GeneralConfig

一种通用的配置数据存储结构,支持多种数据类型和嵌套结构

Visindigo::Utility::GeneralConfigParser

GeneralConfig配套的解析与序列化操作类

Visindigo::Utility::JsonConfig

JsonConfig定义了对Json配置的操作

Visindigo::Utility::JsonDocument

此类在VIJsonConfig的基础上增加了一种允许存在默认值的配置文件的处理方式

Visindigo::Utility::JsonValueRef

此类用于访问VIJsonConfig中的值

Visindigo::Utility::QtSSHelper

此类提供了一些Qt信号槽相关的辅助函数

Visindigo::Widgets::BorderFrame

这是个神奇的类,在Windows上的某些情况下特别有用

Visindigo::Widgets::BorderLabel

这是个神奇的类,在Windows上的某些情况下特别有用

Visindigo::Widgets::ColorfulWidget

ColorfulWidget是一个接口类,表示支持主题变化动画的组件

Visindigo::Widgets::ConfigWidget

此类从CWJson创建配置窗口

Visindigo::Widgets::LiquidGlassEffect

一个提供液态玻璃效果的图形效果类

Visindigo::Widgets::MultiButton

MultiLabel的扩展,提供了按钮的功能

Visindigo::Widgets::MultiButtonGroup

管理多个MultiButton的状态,使它们表现得像一个单选按钮组

Visindigo::Widgets::MultiLabel

一个包含标题、描述和图标的标签组件

Visindigo::Widgets::PixmapCacheHelper

PixmapCacheHelper提供了一个在读取时自动创建QPixmap缓存的工具类

Visindigo::Widgets::PluginManageWidget

显示已加载插件、依赖插件和已停用插件的界面,并提供相关操作

Visindigo::Widgets::QuickMenu

QuickMenu提供了一种从JSON快速创建菜单的方式

Visindigo::Widgets::ShortcutSet

ShortcutSet基于QShortcut实现了一个更快捷的集合

Visindigo::Widgets::StyleSheetTemplate

提供对vst(Visindigo Stylesheet Template)样式表模板的解析与管理功能

Visindigo::Widgets::Terminal

一个内置终端窗口,可以显示日志输出并接受用户输入的命令

Visindigo::Widgets::ThemeManager

ThemeManager提供了比QPalette更宽泛的主题管理功能

Visindigo::Widgets::TitleWidget

提供一个自定义标题栏控件,可以用于无边框窗口的标题栏显示和操作

Visindigo::Widgets::WidgetResizeTool

WidgetResizeTool提供了一个为任意QWidget通过拖动边框调整大小的工具

详细说明

Visindigo 是 Project Visindigo 的核心项目,旨在基于Qt框架提供更多通用的组件和功能, 当前仅供 Yayin Story Studio 使用,但未来可能会供更多基于Qt的应用程序使用。

版本号和ABI

Visindigo 模块在 Visindigo::General::Version 中用 Compiled_YSSABI_Version 宏定义了当前的内核ABI版本号。 要让开发的插件或其他附属程序在程序中记录编译时的内核版本,应在开发时使用此宏。 但若要获取内核本身的ABI版本号,应使用Visindigo::General::Version::getABIVersion() 函数。

每当Visindigo发生 ABI 变化时,Visindigo的版本号也会随之变化:

  1. 若ABI不能再与旧版本兼容,则主版本号加1,次版本号清零。
  2. 若ABI仍然可以与旧版本兼容,则次版本号加1。
  3. ABI版本不使用修订号。

要开发 Visindigo 的插件,详见Visindigo::General::Plugin 类。

无类头文件

Visindigo 模块还提供了一些无类头文件,提供了一些通用的宏定义和函数,详见下列头文件:

子模块

Visindigo 将多个类合作才能提供一个完整功能的部分称作一个子模块。 Visindigo 当前包含以下子模块:

  • VIDebug - Visindigo 日志系统子模块
  • VIPlugin - Visindigo 插件系统子模块