Version: 6000.3
语言: 中文
SearchProvider 类
执行搜索

注册搜索提供程序

要添加新的搜索提供程序,请创建一个函数并使用SearchItemProvider属性,如以下示例所示:

[SearchItemProvider]
internal static SearchProvider CreateProvider()
{
    return new SearchProvider(type, displayName)
    {
        filterId = "me:",
        fetchItems = (context, items, provider) =>
        {
            var itemNames = new List<string>();
            var shortcuts = new List<string>();
            GetMenuInfo(itemNames, shortcuts);

            items.AddRange(itemNames.Where(menuName =>
                    SearchProvider.MatchSearchGroups(context.searchText, menuName))
                .Select(menuName => provider.CreateItem(menuName,
                                            Path.GetFileName(menuName), menuName)));
        },

        fetchThumbnail = (item, context) => Icons.shortcut
    };
}
  • 该函数必须返回一个新的SearchProvider实例。
  • SearchProvider实例必须具有以下内容:
  • 独特的type.例如,资产菜单场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,你放置你的环境、障碍物和装饰品,基本上是将你的游戏设计和构建成碎片。更多信息
    请参阅术语表
    .
  • 一个displayName“筛选器”窗格中使用。
  • 可选的filterId基于文本的过滤提供搜索令牌。例如p:资产搜索的过滤器 ID。

注册搜索提供程序快捷方式

要为新提供程序注册快捷方式,请使用:

[UsedImplicitly, Shortcut("Help/Quick Search/Assets")]
private static void PopQuickSearch()
{
    // Open Search with only the "Asset" provider enabled.
    SearchService.ShowContextual("asset");
}

您可以使用快捷键管理器将快捷键映射到键或组合键。

SearchProvider 类
执行搜索