YSSCore::Editor::ToolWidgetManager Class
class YSSCore::Editor::ToolWidgetManager此类管理由插件提供的工具窗口部件. 详情...
| 头文件: | #include <ToolWidgetManager> |
| 自以下版本: | YSS 0.15.0 |
公开成员函数
(自 0.15.0 引入) | ~ToolWidgetManager() |
(自 0.15.0 引入) QList<QWidget *> | getAllOpenToolWidgets() const |
(自 0.15.0 引入) QMap<QString, QString> | getRegisteredToolWidgets() const |
(自 0.15.0 引入) QWidget * | getToolWidget(const QString &widgetID) |
(自 0.15.0 引入) bool | isToolWidgetOpen(const QString &widgetID) const |
(自 0.15.0 引入) void | openToolWidget(const QString &widgetID) |
(自 0.15.0 引入) void | registerToolWidget(const QString &widgetID, const QString &widgetName, YSSCore::Editor::EditorPlugin *provider) |
信号
(自 0.15.0 引入) void | focusRequested(const QString &widgetID) |
静态公开成员
(自 0.15.0 引入) YSSCore::Editor::ToolWidgetManager * | getInstance() |
详细说明
ToolWidgetManager是一个单例类,负责管理由插件提供的工具窗口部件。 插件可以通过registerToolWidget函数注册它们提供的工具窗口部件, YSS编辑器在需要显示工具窗口内容时会调用requestToolWidget 函数来获取对应ID的工具窗口部件实例。
成员函数文档
[noexcept, since 0.15.0] ToolWidgetManager::~ToolWidgetManager()
析构函数
这个function 从 0.15.0 开始支持。
[signal, since 0.15.0] void ToolWidgetManager::focusRequested(const QString &widgetID)
触发此信号,请求前台将具有ID widgetID 的工具窗口部件聚焦。
这个function 从 0.15.0 开始支持。
[since 0.15.0] QList<QWidget *> ToolWidgetManager::getAllOpenToolWidgets() const
return 所有打开的工具窗口部件实例的函数。返回一个QList,包含所有当前打开的工具窗口部件实例。
这个function 从 0.15.0 开始支持。
[static, since 0.15.0] YSSCore::Editor::ToolWidgetManager *ToolWidgetManager::getInstance()
return ToolWidgetManager实例的静态函数
这个function 从 0.15.0 开始支持。
[since 0.15.0] QMap<QString, QString> ToolWidgetManager::getRegisteredToolWidgets() const
return 已注册工具窗口信息的函数。返回一个QMap,键是工具窗口ID,值是工具窗口显示名称。
注意,返回的显示名称是设置时的原始字符串,未经过翻译处理。如有需要, 调用者可以使用VI18N函数进行翻译。
这个function 从 0.15.0 开始支持。
[since 0.15.0] QWidget *ToolWidgetManager::getToolWidget(const QString &widgetID)
return 工具窗口部件实例的函数。widgetID 是被获取的工具窗口ID。 如果对应ID的工具窗口实例存在则返回该实例;否则返回nullptr。
这个function 从 0.15.0 开始支持。
[since 0.15.0] bool ToolWidgetManager::isToolWidgetOpen(const QString &widgetID) const
检查工具窗口是否打开的函数。 widgetID 是被检查的工具窗口ID。
return 如果对应ID的工具窗口实例存在则返回true;否则返回false。
这个function 从 0.15.0 开始支持。
[since 0.15.0] void ToolWidgetManager::openToolWidget(const QString &widgetID)
请求工具窗口部件实例的函数。widgetID 是被请求的工具窗口ID。
当请求一个工具窗口时,ToolWidgetManager会首先检查是否已经存在对应ID的工具窗口实例, 如果存在则直接返回该实例;否则会检查是否有插件提供了对应ID的工具窗口, 如果有则调用插件的onToolWidgetRequested函数来获取工具窗口实例,
如果插件返回了一个有效的QWidget指针,则ToolWidgetManager会将其保存并返回; 如果没有插件提供或者插件返回了nullptr,则返回nullptr。
这个function 从 0.15.0 开始支持。
[since 0.15.0] void ToolWidgetManager::registerToolWidget(const QString &widgetID, const QString &widgetName, YSSCore::Editor::EditorPlugin *provider)
注册工具窗口部件的函数。widgetID 是工具窗口的唯一ID, widgetName 是工具窗口的显示名称,provider 是提供此工具窗口的插件。
当后来者的ID重复时,将被直接忽略。
这个function 从 0.15.0 开始支持。