Пример #1
0
        private static SettingsProvider CreateSearchSettings()
        {
            var settings = new SettingsProvider(settingsPreferencesKey, SettingsScope.User)
            {
                keywords   = new[] { "quick", "omni", "search" },
                guiHandler = searchContext =>
                {
                    EditorGUIUtility.labelWidth = 500;
                    GUILayout.BeginHorizontal();
                    {
                        GUILayout.Space(10);
                        GUILayout.BeginVertical();
                        {
                            GUILayout.Space(10);
                            EditorGUI.BeginChangeCheck();
                            {
                                trackSelection = EditorGUILayout.Toggle(Styles.trackSelectionContent, trackSelection);
                                fetchPreview   = EditorGUILayout.Toggle(Styles.fetchPreviewContent, fetchPreview);
                                GUILayout.Space(10);
                                DrawProviderSettings();
                            }
                            if (EditorGUI.EndChangeCheck())
                            {
                                Save();
                                SearchService.Refresh();
                            }
                        }
                        GUILayout.EndVertical();
                    }
                    GUILayout.EndHorizontal();
                }
            };

            return(settings);
        }
Пример #2
0
        private static void ResetProviderSettings()
        {
            foreach (var p in SearchService.Providers)
            {
                EditorPrefs.DeleteKey($"{k_KeyPrefix}.{p.name.id}.active");
                EditorPrefs.DeleteKey($"{k_KeyPrefix}.{p.name.id}.priority");
                EditorPrefs.DeleteKey($"{k_DefaultActionPrefKey}{p.name.id}");
            }

            SearchService.Refresh();
        }
        public void EnableService()
        {
            SearchService.SaveFilters();
            SearchService.Filter.ResetFilter(false);
            SearchService.Filter.SetFilter(true, "asset");

            m_WasUsingNewIndex             = SearchSettings.useUberIndexing;
            SearchSettings.useUberIndexing = true;
            ADBIndex.Initialize();
            SearchService.Refresh();
        }
Пример #4
0
        public static void Draw()
        {
            if (!SearchSettings.debug || searchContext == null)
            {
                return;
            }

            Debug.Assert(searchContext != null && searchView != null);

            if (s_CurrentStats == null)
            {
                s_CurrentStats = new DebugInfo();
            }
            s_CurrentStats.Update();

            using (new GUILayout.HorizontalScope(Styles.debugToolbar))
            {
                GUILayout.Label(s_CurrentStats.ToString(s_InitialStats), Styles.debugLabel);

                GUILayout.FlexibleSpace();

                string elapsedTimeString;
                if (searchContext.searchInProgress)
                {
                    var elapsedTime = (int)Math.Round((DateTime.Now - s_StartTime).TotalMilliseconds);
                    elapsedTimeString = "<i>" + elapsedTime + " ms</i>";
                }
                else
                {
                    var elapsedTime = (int)Math.Round((s_EndTime - s_StartTime).TotalMilliseconds);
                    elapsedTimeString = "<b>" + elapsedTime + " ms</b>";
                }
                if (GUILayout.Button(elapsedTimeString, Styles.debugToolbarButton))
                {
                    searchView.Refresh();
                }

                if (GUILayout.Button($"Scan ({s_Objects?.Length ?? 0})", Styles.debugToolbarButton))
                {
                    Scan();
                }

                if (GUILayout.Button("Refresh", Styles.debugToolbarButton))
                {
                    SearchService.Refresh();
                    Refresh();
                    searchView.Refresh();
                }
            }
        }
Пример #5
0
 private void DrawDebugTools()
 {
     if (GUILayout.Button("Refresh", EditorStyles.toolbarButton))
     {
         SearchService.Refresh();
         Refresh();
     }
     if (GUILayout.Button("Save", EditorStyles.toolbarButton))
     {
         SearchService.SaveSettings();
     }
     if (GUILayout.Button("Reset", EditorStyles.toolbarButton))
     {
         SearchService.Reset();
         Refresh();
     }
 }
Пример #6
0
        private static SettingsProvider CreateSearchSettings()
        {
            var settings = new SettingsProvider(settingsPreferencesKey, SettingsScope.User)
            {
                keywords   = new[] { "quick", "omni", "search" },
                guiHandler = searchContext =>
                {
                    EditorGUIUtility.labelWidth = 350;
                    GUILayout.BeginHorizontal();
                    {
                        GUILayout.Space(10);
                        GUILayout.BeginVertical();
                        {
                            GUILayout.Space(10);
                            EditorGUI.BeginChangeCheck();
                            {
                                trackSelection = EditorGUILayout.Toggle(Styles.trackSelectionContent, trackSelection);
                                fetchPreview   = EditorGUILayout.Toggle(Styles.fetchPreviewContent, fetchPreview);
                                GUILayout.BeginHorizontal();
                                assetIndexing = (SearchAssetIndexing)EditorGUILayout.EnumPopup(Styles.assetIndexingLabel, assetIndexing, GUILayout.MaxWidth(450f));
                                if (assetIndexing == SearchAssetIndexing.Complete && !File.Exists(k_RootIndexPath))
                                {
                                    GUILayout.Space(10);
                                    if (GUILayout.Button(Styles.createRootIndexButtonContent, GUILayout.MaxWidth(100)))
                                    {
                                        CreateRootIndex();
                                    }
                                }
                                GUILayout.EndHorizontal();
                                GUILayout.Space(10);
                                DrawProviderSettings();
                            }
                            if (EditorGUI.EndChangeCheck())
                            {
                                Save();
                                SearchService.Refresh();
                            }
                        }
                        GUILayout.EndVertical();
                    }
                    GUILayout.EndHorizontal();
                }
            };

            return(settings);
        }
Пример #7
0
        private static SettingsProvider CreateSearchSettings()
        {
            var settings = new SettingsProvider(settingsPreferencesKey, SettingsScope.User)
            {
                keywords   = new[] { "quick", "omni", "search" },
                guiHandler = searchContext =>
                {
                    EditorGUIUtility.labelWidth = 500;
                    GUILayout.BeginHorizontal();
                    {
                        GUILayout.Space(10);
                        GUILayout.BeginVertical();
                        {
                            GUILayout.Space(10);
                            EditorGUI.BeginChangeCheck();
                            {
                                trackSelection    = EditorGUILayout.Toggle(Styles.trackSelectionContent, trackSelection);
                                fetchPreview      = EditorGUILayout.Toggle(Styles.fetchPreviewContent, fetchPreview);
                                useDockableWindow = EditorGUILayout.Toggle(Styles.useDockableWindowContent, useDockableWindow);

                                rowHeight = EditorGUILayout.FloatField(Styles.rowHeightContent, rowHeight);

                                if (useDockableWindow)
                                {
                                    closeWindowByDefault = EditorGUILayout.Toggle(Styles.closeWindowByDefaultContent, closeWindowByDefault);
                                }
                                GUILayout.Space(10);
                                DrawProviderSettings();
                            }
                            if (EditorGUI.EndChangeCheck())
                            {
                                Save();
                                SearchService.Refresh();
                                QuickSearchTool.RefreshStyles();
                            }
                        }
                        GUILayout.EndVertical();
                    }
                    GUILayout.EndHorizontal();
                }
            };

            return(settings);
        }