FileServerManager Class
class YSSCore::Editor::FileServerManager管理FileServer的对象。. 详情...
| 头文件: | #include <FileServerManager> |
| 自以下版本: | Visindigo 0.13.0 |
公开成员函数
(自 Visindigo 0.13.0 引入) | ~FileServerManager() |
| bool | openFile(const QString &filePath) |
| void | registerFileServer(YSSCore::Editor::FileServer *server) |
| void | unregisterFileServer(YSSCore::Editor::FileServer *server) |
信号
| void | builtinEditorCreated(YSSCore::Editor::FileEditWidget *editor) |
| void | windowEditorCreated(QWidget *editor) |
静态公开成员
| YSSCore::Editor::FileServerManager * | getInstance() |
详细说明
在用户将自己的FileServer注册到FileServerManager后,FileServerManager可以根据已经注册的支持类型选择合适的FileServer来打开文件。
成员函数文档
[noexcept, since Visindigo 0.13.0] FileServerManager::~FileServerManager()
析构FileServerManager对象。一般来说,没有任何情况需要手动析构此对象。FileServerManager应该与使用它的应用程序有一致的生命周期。
这个 function 从 Visindigo 0.13.0 开始支持。
[signal] void FileServerManager::builtinEditorCreated(YSSCore::Editor::FileEditWidget *editor)
当内置编辑器被创建时发出该信号。
这包括YSSCore::Editor::FileServer::EditorType为CodeEditor和BuiltInEditor的情况。
[static] YSSCore::Editor::FileServerManager *FileServerManager::getInstance()
获取FileServerManager的单例对象。 \return 返回FileServerManager的单例对象。
bool FileServerManager::openFile(const QString &filePath)
打开一个文件。如果有合适的FileServer注册,则使用该FileServer打开文件,否则使用内置的文本编辑器打开文件。 filePath 要打开的文件路径。 \return 如果文件成功打开则返回true,否则返回false。
当前的实现中,如果有多个FileServer支持同一种文件类型,则总是使用第一个注册的FileServer来打开该类型的文件。
Warning: 这是设计缺陷,未来的版本中会改进这一点。
void FileServerManager::registerFileServer(YSSCore::Editor::FileServer *server)
注册一个FileServer对象。 \param server 要注册的FileServer对象指针。 如果同一个FileServer对象被重复注册,则不会有任何效果。
void FileServerManager::unregisterFileServer(YSSCore::Editor::FileServer *server)
注销一个已经注册的FileServer对象。 \param server 要注销的FileServer对象指针。 如果传入的FileServer对象没有被注册,则不会有任何效果。
[signal] void FileServerManager::windowEditorCreated(QWidget *editor)
当窗口编辑器被创建时发出该信号。 这只对应YSSCore::Editor::FileServer::EditorType为WindowEditor的情况。