private void AddTag(string tag) { if (!m_TagControl.Add(tag, true)) return; RestartLogCat(); }
public override void OnGUI(Rect rect) { var currentEvent = Event.current; bool hitEnter = currentEvent.type == EventType.KeyDown && (currentEvent.keyCode == KeyCode.Return || currentEvent.keyCode == KeyCode.KeypadEnter); const float kEntryMargin = 8; EditorGUILayout.BeginVertical(); GUILayout.Space(kEntryMargin); // Draw the input field & "Add" Button. EditorGUILayout.BeginHorizontal(GUILayout.ExpandWidth(true)); GUI.SetNextControlName(kTagInputTextFieldControlId); m_InputTagName = EditorGUILayout.TextField(m_InputTagName, GUILayout.Height(AndroidLogcatStyles.kTagEntryFixedHeight + 2)); var trimmedTagName = m_InputTagName.Trim(); if (trimmedTagName.Length > 23) { GUILayout.Space(kEntryMargin + 2); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); GUILayout.Space(kEntryMargin + 7); EditorGUILayout.HelpBox("The logging tag can be at most 23 characters, was " + trimmedTagName.Length + " .", MessageType.Warning); } else { if (GUILayout.Button("Add", GUILayout.Width(40)) || (hitEnter && GUI.GetNameOfFocusedControl() == kTagInputTextFieldControlId)) { if (!string.IsNullOrEmpty(trimmedTagName)) { m_TagControl.Add(trimmedTagName); m_InputTagName = string.Empty; GUIUtility.keyboardControl = 0; // Have to remove the focus from the input text field to clear it. } } } GUILayout.Space(4); EditorGUILayout.EndHorizontal(); DoTagListGUI(kEntryMargin); EditorGUILayout.EndVertical(); }