Files
XCEngine/docs/api/XCEngine/Editor/Managers/ProjectManager/CreateFolder.md

1.1 KiB

ProjectManager::CreateFolder

AssetItemPtr CreateFolder(const std::string& name);

当前行为

CreateFolder(...) 当前在“当前目录”下创建新文件夹,而不是在任意传入路径下创建。

它会:

  1. trim 输入名称
  2. 拒绝空名、... 和 Windows 非法文件名字符
  3. 在当前目录下计算唯一目标名
  4. 执行 create_directory(...)
  5. 刷新目录树
  6. 查回新建目录对应的 AssetItem
  7. 自动把它设为当前选中项

唯一命名规则

若目标目录已存在,当前会追加数字后缀:

  • New Folder
  • New Folder 1
  • New Folder 2

这与 tests/Editor/test_action_routing.cppProjectCommandsCreateFolderUsesUniqueDefaultName 一致。

返回值语义

  • 创建并刷新成功时,返回新目录对应的 AssetItemPtr
  • 参数非法、目录创建失败或刷新后无法重新解析该目录时,返回 nullptr

相关文档