public static void ShowAtPosition(QuickSearch quickSearchTool, SearchContext context, Rect screenRect) { var window = CreateInstance <SearchQueryCreateWindow>(); window.m_SearchView = quickSearchTool; window.m_Context = context; window.m_Description = context.searchText; window.m_QueryFolder = SearchSettings.queryFolder; window.m_QueryFileName = SearchQuery.RemoveInvalidChars(context.searchText); window.ShowAsDropDown(screenRect, Styles.windowSize); }
internal void OnGUI() { if (Event.current.type == EventType.KeyDown && Event.current.keyCode == KeyCode.Escape) { Close(); m_SearchView?.Focus(); return; } var oldLabelWidth = EditorGUIUtility.labelWidth; EditorGUIUtility.labelWidth = 95; GUI.Box(new Rect(0, 0, position.width, position.height), GUIContent.none, Styles.panelBorder); HandleKeyboardNavigation(); GUILayout.Label("Create New Search Query", Styles.filterHeader); GUILayout.Label(GUIContent.none, Styles.separator); using (new EditorGUILayout.HorizontalScope()) { GUI.SetNextControlName("CreateSearchQueryTextField"); EditorGUI.BeginChangeCheck(); m_QueryFileName = EditorGUILayout.TextField("Asset file name", m_QueryFileName, GUILayout.ExpandWidth(true)); if (EditorGUI.EndChangeCheck()) { m_QueryFileName = SearchQuery.RemoveInvalidChars(m_QueryFileName); } if (m_NeedFocus) { m_NeedFocus = true; EditorGUI.FocusTextInControl("CreateSearchQueryTextField"); } EditorGUIUtility.labelWidth = oldLabelWidth; using (new EditorGUI.DisabledScope(string.IsNullOrEmpty(m_QueryFileName))) { if (GUILayout.Button("Create", GUILayout.ExpandWidth(false))) { TryCreateSearchQuery(); } } } }
internal void OnGUI() { if (Event.current.type == EventType.KeyDown && Event.current.keyCode == KeyCode.Escape) { Close(); m_SearchView?.Focus(); return; } var oldLabelWidth = EditorGUIUtility.labelWidth; EditorGUIUtility.labelWidth = 95; GUI.Box(new Rect(0, 0, position.width, position.height), GUIContent.none, Styles.panelBorder); HandleKeyboardNavigation(); GUILayout.Label("Create New Search Query", Styles.filterHeader); GUILayout.Label(GUIContent.none, Styles.separator); EditorGUI.BeginChangeCheck(); m_QueryFileName = EditorGUILayout.TextField("Asset file name", m_QueryFileName); if (EditorGUI.EndChangeCheck()) { m_QueryFileName = SearchQuery.RemoveInvalidChars(m_QueryFileName); } m_Description = EditorGUILayout.TextField(Styles.descriptionContent, m_Description); m_Icon = EditorGUILayout.ObjectField("Icon", m_Icon, typeof(Texture2D), false) as Texture2D; EditorGUIUtility.labelWidth = oldLabelWidth; using (new EditorGUI.DisabledScope(string.IsNullOrEmpty(m_QueryFileName))) using (new EditorGUILayout.HorizontalScope()) { GUILayout.FlexibleSpace(); if (GUILayout.Button("Create")) { TryCreateSearchQuery(); } GUILayout.FlexibleSpace(); } }