TreeView — это элемент управления IMGUI, который позволяет создавать древовидные представления, списковые представления и таблицы с несколькими столбцами для инструментов редактора.
Его можно настроить в отношении рендеринга содержимого строки, логики перетаскивания, логики выбора, поиска, сортировки и переименования элементов. Чтобы обеспечить согласованность между TreeView, следующие функции не настраиваются: отрисовка складывающейся стрелки, отрисовка выбора, отрисовка маркеров перетаскивания.
| baseIndent |
Отступ, используемый для всех строк перед стрелками и содержимым дерева. |
| cellMargin |
При использовании MultiColumnHeader это значение настраивает прямоугольники ячеек, предусмотренные для всех столбцов, кроме столбца иерархической структуры. |
| columnIndexForTreeFoldouts |
При использовании MultiColumnHeader это значение должно быть установлено равным индексу столбца, в котором должны отображаться раскрывающиеся стрелки. |
| customFoldoutYOffset |
Пользовательское вертикальное смещение раскрывающейся стрелки. |
| depthIndentWidth |
Значение, которое возвращает отступ складных листов для каждого увеличения значения глубины. |
| extraSpaceBeforeIconAndLabel |
Значение для управления интервалом перед значком и меткой по умолчанию. Может использоваться, например, для размещения переключателя слева от содержимого. |
| foldoutOverride |
Регистрирует обратный вызов для этого свойства, чтобы переопределить кнопку Foldout в TreeView. |
| foldoutWidth |
Ширина встроенной раскрывающейся стрелки. |
| getNewSelectionOverride |
Регистрирует обратный вызов для этого поля, чтобы переопределить, как TreeView обрабатывает изменения выбора в ответ на нажатия клавиш и щелчки мыши. |
| hasSearch |
Текущее состояние поиска в TreeView. |
| isDragging |
true, если пользователь в данный момент перетаскивает один или несколько элементов в TreeView, и ложь в противном случае. |
| isInitialized |
TreeView инициализируется вызовом Reload(). Поэтому возвращает false, пока Reload() не будет вызвана в первый раз. |
| multiColumnHeader |
Получение MultiColumnHeader для TreeView. Может быть нулевым, если TreeView был создан без MultiColumnHeader. |
| rootItem |
Скрытый корневой элемент TreeView (он никогда не отображается). |
| rowHeight |
Фиксированная высота, используемая для каждой строки в TreeView, если GetCustomRowHeight не был переопределен. |
| searchString |
Текущая строка поиска TreeView. |
| showAlternatingRowBackgrounds |
Включает этот параметр, чтобы отображались чередующиеся цвета фона строк. |
| showBorder |
Включает , чтобы показать границу вокруг TreeView. |
| showingHorizontalScrollBar |
Возвращает true, если отображается горизонтальная полоса прокрутки, иначе false. |
| showingVerticalScrollBar |
Возвращает true, если отображается вертикальная полоса прокрутки, иначе false. |
| state |
Состояние TreeView (расширенное состояние, выделение, прокрутка и т. д.) |
| totalHeight |
Возвращает сумму высот строк TreeView, высоты MultiColumnHeader (если используется) и границы (если используется). |
| treeViewControlID |
controlID, используемый TreeView для получения фокуса управления клавиатурой. |
| treeViewRect |
Образец Rect, в который визуализируется TreeView. |
| useScrollView |
При отрисовке содержимого TreeView оно будет заключено в ScrollView? |
| BeginRename |
Показывает наложение переименования для TreeViewItem. |
| CollapseAll |
Свернуть все развернутые элементы в TreeView. |
| EndRename |
Заканчивает переименование, если отображается наложение переименования. При вызове, когда наложение переименования не отображается, этот метод ничего не делает. |
| ExpandAll |
Развернуть все свернутые элементы в TreeView. |
| FrameItem |
Это покажет элемент с идентификатором ID (путем расширения предков этого элемента) и обеспечит его видимость в ScrollView. |
| GetExpanded |
Возвращает список идентификаторов TreeViewItem, которые в настоящее время развернуты в TreeView. |
| GetRows |
Это список объектов TreeViewItem, созданных в BuildRows. |
| GetSelection |
Возвращает список выбранных ID TreeViewItem. |
| HasFocus |
Возвращает true, если TreeView и его EditorWindow имеют фокус клавиатуры. |
| HasSelection |
Возвращает true, если в TreeView есть выбор. |
| IsExpanded |
Возвращает значение true, если TreeViewItem с идентификатором ID в настоящее время развернут. |
| IsSelected |
Возвращает true, если в данный момент выбран TreeViewItem с идентификатором ID. |
| OnGUI |
Это основной метод графического интерфейса TreeView, в котором обрабатываются и отображаются элементы TreeViewItem. |
| Reload |
Вызовите это, чтобы заставить TreeView перезагрузить свои данные. Это, в свою очередь, вызывает вызовы BuildRoot и BuildRows. |
| Repaint |
Запросить перерисовку окна, в котором отображается TreeView. |
| SelectAllRows |
Выбирает все строки в TreeView. |
| SetExpanded |
Установите один элемент TreeViewItem для развертывания или свертывания. |
| SetExpandedRecursive |
Развернуть или свернуть все элементы под элементом с идентификатором. |
| SetFocus |
Вызов этой функции изменяет фокус клавиатуры на TreeView. |
| SetFocusAndEnsureSelectedItem |
Вызов этой функции изменяет фокус клавиатуры на TreeView и обеспечивает выбор элемента. Используйте эту функцию, чтобы включить навигацию по дереву с помощью клавиш. |
| SetSelection |
Установите выбранные элементы TreeView. |
| AddExpandedRows |
Добавляет развернутые строки полного дерева в список ввода. Используйте этот метод только в том случае, если в BuildRoot было построено полное дерево. |
| AfterRowsGUI |
Вызывается после того, как для всех строк вызывается RowGUI. |
| BeforeRowsGUI |
Вызывается перед вызовом RowGUI любых строк. |
| BuildRoot |
Абстрактный метод, который необходимо реализовать. По умолчанию этот метод должен создавать полное дерево TreeViewItems и возвращать корень. |
| BuildRows |
Переопределяет этот метод, чтобы управлять созданием строк. |
| CanBeParent |
Переопределяет этот метод, чтобы контролировать, какие элементы могут быть родительскими. |
| CanChangeExpandedState |
Переопределяет этот метод, чтобы контролировать, можно ли разворачивать или сворачивать элемент с помощью клавиши или мыши. |
| CanMultiSelect |
Переопределяет этот метод, чтобы контролировать, может ли элемент быть частью множественного выбора. |
| CanRename |
Переопределяет этот метод, чтобы указать, можно ли переименовывать элемент с помощью сочетания клавиш или щелчка по уже выбранному элементу. |
| CanStartDrag |
Эта функция вызывается всякий раз, когда элемент TreeViewItem щелкается и перетаскивается. По умолчанию возвращает false. |
| CenterRectUsingSingleLineHeight |
Изменяет прямоугольник ввода таким образом, чтобы он располагался по центру и имел высоту, равную EditorGUIUtility.singleLineHeight. |
| CommandEventHandling |
Эта функция вызывается автоматически и обрабатывает события ExecuteCommand для «SelectAll» и «FrameSelection». Переопределяет эту функцию, чтобы расширить или избежать командных событий. |
| ContextClicked |
Переопределяет этот метод, чтобы обрабатывать контекстные клики вне каких-либо элементов (но все еще в прямоугольнике TreeView). |
| ContextClickedItem |
Переопределяет этот метод для обработки контекстного клика по элементу с идентификатором TreeViewItem.id. |
| DoesItemMatchSearch |
Переопределяет эту функцию, чтобы расширить или изменить поведение поиска. |
| DoubleClickedItem |
Переопределяет этот метод для обработки событий двойного щелчка по элементу. |
| ExpandedStateChanged |
Переопределяет , чтобы получать уведомления, когда элементы развернуты или свернуты. Это общее уведомление об изменении расширенного состояния. |
| FindItem |
Находит TreeViewItem по идентификатору. |
| FindRowOfItem |
Возвращает строку данного элемента TreeViewItem. |
| FindRows |
Полезно для преобразования ID TreeViewItem в TreeViewItem с использованием текущих строк. |
| GetAncestors |
Этот метод, например. используется для отображения элементов, которые в данный момент находятся под свернутым элементом. |
| GetCellRectForTreeFoldouts |
Утилита для настройки нескольких столбцов. Этот метод обрезает входной rowRect по прямоугольнику столбца, определенному columnIndexForTreeFoldouts, чтобы получить прямоугольник ячейки, в котором появляются раскрывающиеся стрелки. |
| GetContentIndent |
Возвращает горизонтальное смещение содержимого элемента. Здесь должно начинаться содержимое (после раскрывающейся стрелки). |
| GetCustomRowHeight |
Переопределение для управления высотой отдельных строк. |
| GetDescendantsThatHaveChildren |
Возвращает всех потомков элемента с идентификатором id, у которых есть дочерние элементы. |
| GetFirstAndLastVisibleRows |
Возвращает первый и последний индексы строк, видимых в представлении прокрутки TreeView. |
| GetFoldoutIndent |
Возвращает смещение элемента по горизонтали. Здесь отображается раскрывающаяся стрелка. |
| GetRenameRect |
Переопределите этот метод, если в RowGUI используется индивидуальная обработка графического интерфейса. Этот метод определяет, где появляется наложение переименования. |
| GetRowRect |
Получить прямоугольник для строки. |
| HandleDragAndDrop |
Переопределите эту функцию, чтобы управлять поведением перетаскивания TreeView. |
| KeyEvent |
Переопределите этот метод для обработки событий, когда TreeView имеет фокус клавиатуры. |
| RefreshCustomRowHeights |
Обновляет кэш пользовательских прямоугольников строк на основе высоты, возвращаемой GetCustomRowHeight. |
| RenameEnded |
Вызывается, когда переименование завершается либо пользователем, завершающим процесс переименования, либо когда оверлей переименования теряет фокус или закрывается с помощью EndRename. |
| RowGUI |
Переопределите этот метод, чтобы добавить пользовательский контент графического интерфейса для строк в TreeView. |
| SearchChanged |
Переопределить метод, чтобы получать уведомления об изменениях строки поиска. |
| SelectionChanged |
Переопределить метод, чтобы получать уведомления об изменениях выбора. |
| SelectionClick |
Используйте этот метод в RowGUI для выполнения логики щелчка мыши. |
| SetupDragAndDrop |
Эта функция вызывается, когда CanStartDrag возвращает значение true. |
| SingleClickedItem |
Переопределите этот метод для обработки событий одиночного щелчка по элементу. |
| SortItemIDsInRowOrder |
Возвращает список, отсортированный в том порядке, в котором они отображаются в TreeView. |