Exemplo n.º 1
0
        public void Setup(List <string> _options, Action <string> _finishInput)
        {
            options       = _options;
            onFinishInput = _finishInput;

            searchField           = new SearchField();
            treeView              = new AutoCompleteTreeView(this, new TreeViewState());
            treeView.searchString = "";

            treeView.SetFocus();
        }
Exemplo n.º 2
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));
        }
Exemplo n.º 3
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));
        }