Esempio n. 1
0
        void OnGUI()
        {
            if (_shouldClose || treeView == null) // When code recompiles treeview will become null
            {
                Close();
                return;
            }
            treeView.SetFocus();

            var evt = Event.current;

            if (evt.type == EventType.KeyDown)
            {
                if (evt.keyCode == KeyCode.Backspace)
                {
                    evt.Use();
                    if (treeView.searchString.Length > 0)
                    {
                        treeView.searchString = treeView.searchString.Substring(0, treeView.searchString.Length - 1);
                    }
                }

                char ch = evt.character;
                if (!Char.IsControl(ch))
                {
                    evt.Use();
                    treeView.searchString += ch;

                    var rows = treeView.GetRows();
                    if (rows.Count > 0)
                    {
                        treeView.SetSelection(new List <int> {
                            rows[0].id
                        });
                    }
                }
            }

            searchField.OnGUI(treeView.searchString);
            treeView.OnGUI(GUILayoutUtility.GetRect(0, 10000, 0, 10000));
        }
Esempio n. 2
0
        void OnGUI()
        {
            treeView.SetFocus();

            var evt = Event.current;

            if (evt.type == EventType.KeyDown)
            {
                if (evt.keyCode == KeyCode.Backspace)
                {
                    evt.Use();
                    if (treeView.searchString.Length > 0)
                    {
                        treeView.searchString = treeView.searchString.Substring(0, treeView.searchString.Length - 1);
                    }
                }

                char ch = evt.character;
                if (Char.IsLetterOrDigit(ch) || ch == '_')
                {
                    evt.Use();
                    treeView.searchString += ch;

                    var rows = treeView.GetRows();
                    if (rows.Count > 0)
                    {
                        treeView.SetSelection(new List <int> {
                            rows[0].id
                        });
                    }
                }
            }

            searchField.OnGUI(treeView.searchString);
            treeView.OnGUI(GUILayoutUtility.GetRect(0, 10000, 0, 10000));
        }