UnityEditor.ColumnView.StealImportantListviewKeys C# (CSharp) Method

StealImportantListviewKeys() private static method

private static StealImportantListviewKeys ( ) : KeyCode
return KeyCode
        private static KeyCode StealImportantListviewKeys()
        {
            if (Event.current.type == EventType.KeyDown)
            {
                KeyCode keyCode = Event.current.keyCode;
                switch (keyCode)
                {
                    case KeyCode.UpArrow:
                    case KeyCode.DownArrow:
                    case KeyCode.PageUp:
                    case KeyCode.PageDown:
                        Event.current.Use();
                        return keyCode;
                }
            }
            return KeyCode.None;
        }

Usage Example

示例#1
0
        public void OnGUI(List <ColumnViewElement> elements, ColumnView.ObjectColumnFunction previewColumnFunction, ColumnView.ObjectColumnFunction selectedSearchItemFunction, ColumnView.ObjectColumnFunction selectedRegularItemFunction, ColumnView.ObjectColumnGetDataFunction getDataForDraggingFunction)
        {
            ColumnView.InitStyles();
            this.m_ScrollPosition = GUILayout.BeginScrollView(this.m_ScrollPosition, new GUILayoutOption[0]);
            GUILayout.BeginHorizontal(new GUILayoutOption[0]);
            List <ColumnViewElement> list = elements;
            int    i = 0;
            object obj;

            do
            {
                if (this.m_ListViewStates.Count == i)
                {
                    this.m_ListViewStates.Add(new ListViewState());
                }
                if (this.m_CachedSelectedIndices.Count == i)
                {
                    this.m_CachedSelectedIndices.Add(-1);
                }
                ListViewState listViewState = this.m_ListViewStates[i];
                listViewState.totalRows = list.Count;
                if (i == 0)
                {
                    GUILayout.BeginVertical(new GUILayoutOption[]
                    {
                        GUILayout.MaxWidth(this.columnWidth)
                    });
                }
                int num = this.m_CachedSelectedIndices[i];
                num = this.DoListColumn(listViewState, list, i, num, (i != 0) ? null : selectedSearchItemFunction, selectedRegularItemFunction, getDataForDraggingFunction);
                if (Event.current.type == EventType.Layout && this.m_ColumnToFocusKeyboard == i)
                {
                    this.m_ColumnToFocusKeyboard = -1;
                    GUIUtility.keyboardControl   = listViewState.ID;
                    if (listViewState.row == -1 && list.Count != 0)
                    {
                        num = (listViewState.row = 0);
                    }
                }
                if (i == 0)
                {
                    if (this.isSearching)
                    {
                        KeyCode keyCode = ColumnView.StealImportantListviewKeys();
                        if (keyCode != KeyCode.None)
                        {
                            ListViewShared.SendKey(this.m_ListViewStates[0], keyCode);
                        }
                    }
                    this.m_SearchText = EditorGUILayout.ToolbarSearchField(this.m_SearchText, new GUILayoutOption[0]);
                    GUILayout.EndVertical();
                }
                if (num >= list.Count)
                {
                    num = -1;
                }
                if (Event.current.type == EventType.Layout && this.m_CachedSelectedIndices[i] != num && this.m_ListViewStates.Count > i + 1)
                {
                    int index = i + 1;
                    int count = this.m_ListViewStates.Count - (i + 1);
                    this.m_ListViewStates.RemoveRange(index, count);
                    this.m_CachedSelectedIndices.RemoveRange(index, count);
                }
                this.m_CachedSelectedIndices[i] = num;
                obj  = ((num <= -1) ? null : list[num].value);
                list = (obj as List <ColumnViewElement>);
                i++;
            }while (list != null);
            while (i < this.minimumNumberOfColumns)
            {
                this.DoDummyColumn();
                i++;
            }
            ColumnView.DoPreviewColumn(obj, previewColumnFunction);
            GUILayout.EndHorizontal();
            GUILayout.EndScrollView();
        }
All Usage Examples Of UnityEditor.ColumnView::StealImportantListviewKeys