NSTreeController
NSTreeController привязка совместимый контроллер, управляющий деревом объектов. Это обеспечивает управление видом и выбор. Его основная цель состоит в том, чтобы действовать как контроллер при привязке NSOutlineView и NSBrowser экземпляры к иерархическому набору объектов. Корневой объект содержания дерева может быть отдельным объектом или массивом объектов.
NSTreeController объект требует, чтобы Вы описали, как дерево объектов пересечено путем указания ключевого пути для дочерних объектов, указанных childrenKeyPath. Все дочерние объекты для дерева должны быть значением ключа, кодирующим совместимый для того же дочернего ключевого пути. Если необходимо, необходимо добавить свойства к классам модели, отображающим дочернее ключевое имя к надлежащему специфичному для класса имени свойства.
Дочерние объекты могут реализовать метод счета (указанный к древовидному использованию контроллера countKeyPath) это, если предоставленный, возвращает число доступных дочерних объектов. Ваши объекты модели, как ожидают, обновят значение ключевого пути количества в значении ключа, наблюдая совместимый метод. Дополнительно, можно также обеспечить листовое ключевое использование пути leafKeyPath это указывает ключ в Вашем возвращающемся объекте модели YEStrue если объект является вершиной, и NOfalse если это не. Изменения в значении вершины дочернего объекта должны быть внесены в значении ключа, наблюдая совместимый способ. Обеспечение ключевого пути вершины может улучшить производительность, потому что это предотвращает NSTreeController от необходимости исследовать дочерний объект, чтобы определить, является ли это вершина.
Наследование
-
NSObject -
NSController -
NSObjectController -
NSTreeController
-
NSObject -
NSController -
NSObjectController -
NSTreeController
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCoding -
NSObjectProtocol -
Печатаемый -
NSCoding -
NSObject
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.4 и позже.
-
sortDescriptors sortDescriptorsСвойствоМассив, содержащий дескрипторы вида раньше, располагал содержание древовидного контроллера.
Объявление
Swift
var sortDescriptors: [AnyObject]!Objective C
@property(copy) NSArray *sortDescriptorsОбсуждение
Когда значение этого свойства
nil, древовидный контроллер не имеет никаких сконфигурированных дескрипторов вида, что означает, что содержание располагается в их естественном порядке. Это свойство является заметным наблюдением значения ключа использования.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
содержание содержаниеСвойствоОбъект содержания древовидного контроллера.
Объявление
Swift
var content: AnyObject!Objective C
@property(strong) id contentОбсуждение
Значение этого свойства может быть массивом объектов или единственным корневым объектом. Значение по умолчанию
nil. Это свойство является заметным наблюдением значения ключа использования.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
arrangedObjects arrangedObjectsСвойствоСортированные объекты содержания древовидного контроллера. (только для чтения)
Объявление
Swift
var arrangedObjects: AnyObject { get }Objective C
@property(readonly, strong) id arrangedObjectsОбсуждение
Значение этого свойства представляет корневой древовидный узел прокси, содержащий сортированные объекты содержания древовидного контроллера. Объект прокси отвечает на
childNodesиdescendantNodeAtIndexPath:сообщения. Это свойство является заметным наблюдением значения ключа использования.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Используйте этот метод для инициирования переупорядочения содержания древовидного контроллера.
Объявление
Swift
func rearrangeObjects()Objective C
- (void)rearrangeObjectsОбсуждение
Подклассы должны вызвать этот метод, если любой параметр, влияющий на расположенные изменения объектов.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Устанавливает текущий выбор древовидного контроллера.
Объявление
Swift
func setSelectionIndexPath(_indexPath: NSIndexPath?) -> BoolObjective C
- (BOOL)setSelectionIndexPath:(NSIndexPath *)indexPathПараметры
indexPathПредложенный новый выбор.
Возвращаемое значение
Возвратиться
YEStrueесли выбор изменился, иначеNOfalse.Обсуждение
Попытка изменить выбор может вызвать a
commitEditingсообщение, переставшее работать, таким образом отклоняя изменение выбора.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
selectionIndexPath selectionIndexPathСвойствоИндексный путь первого выбранного объекта. (только для чтения)
Объявление
Swift
@NSCopying var selectionIndexPath: NSIndexPath? { get }Objective C
@property(readonly, copy) NSIndexPath *selectionIndexPathОбсуждение
Значение этого свойства
nilесли нет никакого выбора. Это свойство является заметным наблюдением значения ключа использования.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
Устанавливает текущий выбор древовидного контроллера в указанные индексные пути.
Объявление
Swift
func setSelectionIndexPaths(_indexPaths: [AnyObject]!) -> BoolObjective C
- (BOOL)setSelectionIndexPaths:(NSArray *)indexPathsПараметры
indexPathsМассив
NSIndexPathобъекты, указывающие выбранные объекты.Возвращаемое значение
Возвратиться
YEStrueесли выбор изменился, иначеNOfalse.Обсуждение
Попытка изменить выбор может вызвать a
commitEditingсообщение, переставшее работать, таким образом отклоняя изменение выбора.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
selectionIndexPaths selectionIndexPathsСвойствоМассив, содержащий индексные пути в настоящее время выбранных объектов. (только для чтения)
Объявление
Swift
var selectionIndexPaths: [AnyObject]! { get }Objective C
@property(readonly, copy) NSArray *selectionIndexPathsОбсуждение
Это свойство содержит массив, содержащий
NSIndexPathобъекты для каждого из выбранных объектов в содержании древовидного контроллера. Это свойство является заметным наблюдением значения ключа использования.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
selectedObjects selectedObjectsСвойствоМассив, содержащий в настоящее время выбранные объекты в содержании древовидного контроллера. (только для чтения)
Объявление
Swift
var selectedObjects: [AnyObject]! { get }Objective C
@property(readonly, copy) NSArray *selectedObjectsОбсуждение
Это свойство является заметным наблюдением значения ключа использования.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
selectedNodes selectedNodesСвойствоМассив, содержащий выбранные древовидные узлы древовидного контроллера. (только для чтения)
Объявление
Swift
var selectedNodes: [AnyObject]! { get }Objective C
@property(readonly, copy) NSArray *selectedNodesОператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
-
Булево значение, указывающее, выбирает ли древовидный контроллер автоматически объекты, поскольку они вставляются.
Объявление
Swift
var selectsInsertedObjects: BoolObjective C
@property BOOL selectsInsertedObjectsОбсуждение
Значение по умолчанию этого свойства
YEStrue. Это свойство является заметным наблюдением значения ключа использования.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
Добавляют объекты в указанном
indexPathsв содержании древовидного контроллера к текущему выбору.Объявление
Swift
func addSelectionIndexPaths(_indexPaths: [AnyObject]) -> BoolObjective C
- (BOOL)addSelectionIndexPaths:(NSArray *)indexPathsОбсуждение
Попытка изменить выбор может вызвать a
commitEditingсообщение, переставшее работать, таким образом отклоняя изменение выбора.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Удаляет объекты в указанном
indexPathsот текущего выбора древовидного контроллера, возвращаясьYEStrueесли был изменен выбор.Объявление
Swift
func removeSelectionIndexPaths(_indexPaths: [AnyObject]) -> BoolObjective C
- (BOOL)removeSelectionIndexPaths:(NSArray *)indexPathsОбсуждение
Попытка изменить выбор может вызвать a
commitEditingсообщение, переставшее работать, таким образом отклоняя изменение выбора.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
avoidsEmptySelection avoidsEmptySelectionСвойствоБулево значение, указывающее, требует ли древовидный контроллер, чтобы довольное массив попыталось поддержать выбор в любом случае, избежав пустого выбора.
Объявление
Swift
var avoidsEmptySelection: BoolObjective C
@property BOOL avoidsEmptySelectionОбсуждение
Когда значение этого свойства
YEStrue, древовидный контроллер поддерживает выбор, при отсутствии объектов в содержании. Значение по умолчаниюYEStrue. Это свойство является заметным наблюдением значения ключа использования.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
preservesSelection preservesSelectionСвойствоБулево значение, указывающее, попытается ли древовидный контроллер сохранить текущий выбор, когда изменится содержание.
Объявление
Swift
var preservesSelection: BoolObjective C
@property BOOL preservesSelectionОбсуждение
Когда значение этого свойства
YEStrue, выбор сохраняется, если это возможно. Значение по умолчаниюYEStrue. Это свойство является заметным наблюдением значения ключа использования.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
Булево значение, указывающее, возвращает ли древовидный контроллер всегда многократный маркер значений, когда многократные объекты выбраны, даже если выбранные пункты имеют то же значение.
Объявление
Swift
var alwaysUsesMultipleValuesMarker: BoolObjective C
@property BOOL alwaysUsesMultipleValuesMarkerОбсуждение
Установка этого свойства к
YEStrueесли Ваше приложение не позволяет редактировать многократные значения, может увеличить производительность. Значение по умолчаниюNOfalse. Это свойство является заметным наблюдением значения ключа использования.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
Добавляет объект к содержанию древовидного контроллера после текущего выбора.
Объявление
Swift
func add(_sender: AnyObject?)Objective C
- (void)add:(id)senderОбсуждение
senderобычно объект, вызвавший этот метод.Если получатель находится в объектном режиме,
newObjectвызывается и возвращенный объект добавляется к набору. Если получатель находится в режиме объекта, новый объект создается, который надлежащий, как указано объектом, иnewObjectне используется. Объект добавляется после текущего выбора на той же глубине. Если нет никакого выбора, объект добавляется к дочерним узлам сортированных объектов содержания древовидного контроллера, представленных значениемarrangedObjects.Специальные замечания
Результат этого метода задерживается до следующей итерации цикла выполнения так, чтобы ошибочный механизм представления мог обеспечить обратную связь как лист.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Добавляет дочерний объект к в настоящее время выбранный пункт.
Объявление
Swift
func addChild(_sender: AnyObject?)Objective C
- (void)addChild:(id)senderОбсуждение
senderобычно объект, вызвавший этот метод.Если получатель находится в объектном режиме
newObjectвызывается и возвращенный объект добавляется как дочерний элемент. Если получатель находится в режиме объекта, новый объект создается, который подходящий для отношения, как указано объектом, иnewObjectне используется.Специальные замечания
Результат этого метода задерживается до следующей итерации цикла выполнения так, чтобы ошибочный механизм представления мог обеспечить обратную связь как лист.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
canAddChild canAddChildСвойствоБулево значение, указывающее, может ли дочерний объект быть добавлен к содержанию древовидного контроллера. (только для чтения)
Объявление
Swift
var canAddChild: Bool { get }Objective C
@property(readonly) BOOL canAddChildОбсуждение
Значение этого свойства
YEStrueесли дочерний объект может быть добавлен к содержанию древовидного контроллера. Это свойство является заметным наблюдением значения ключа использования.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Булево значение, указывающее, может ли объект быть вставлен в содержание древовидного контроллера. (только для чтения)
Объявление
Swift
var canInsert: Bool { get }Objective C
@property(readonly) BOOL canInsertОбсуждение
Значение этого свойства
YEStrueесли объект может быть вставлен в содержание древовидного контроллера. Это свойство является заметным наблюдением значения ключа использования.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
canInsertChild canInsertChildСвойствоБулево значение, указывающее, может ли дочерний объект быть вставлен в содержание древовидного контроллера. (только для чтения)
Объявление
Swift
var canInsertChild: Bool { get }Objective C
@property(readonly) BOOL canInsertChildОбсуждение
Значение этого свойства
YEStrueесли дочерний объект может быть вставлен в содержание древовидного контроллера. Это свойство является заметным наблюдением значения ключа использования.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Создает новый объект класса, указанного
objectClassи вставляет его в содержание древовидного контроллера.Объявление
Swift
func insert(_sender: AnyObject?)Objective C
- (void)insert:(id)senderОбсуждение
senderобычно объект, вызвавший этот метод.Если получатель находится в объектном режиме
newObjectвызывается и возвращенный объект вставляется в набор. Если получатель находится в режиме объекта, новый объект создается, который надлежащий, как указано объектом, иnewObjectне используется.Специальные замечания
Результат этого метода задерживается до следующей итерации цикла выполнения так, чтобы ошибочный механизм представления мог обеспечить обратную связь как лист.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Создает новый объект класса, указанного
objectClassи вставляет его в содержание древовидного контроллера как дочерний элемент текущего выбора.Объявление
Swift
func insertChild(_sender: AnyObject?)Objective C
- (void)insertChild:(id)senderОбсуждение
senderобычно объект, вызвавший этот метод.Если получатель находится в объектном режиме
newObjectвызывается и возвращенный объект вставляется как дочерний элемент. Если получатель находится в режиме объекта, новый объект создается, который подходящий для отношения, как указано объектом, иnewObjectне используется.Специальные замечания
Результат этого метода задерживается до следующей итерации цикла выполнения так, чтобы ошибочный механизм представления мог обеспечить обратную связь как лист.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Вставляет
objectв расположенные объекты древовидного контроллера выстраивают в расположении, указанномindexPath, и добавляет его к содержанию древовидного контроллера.Объявление
Swift
func insertObject(_object: AnyObject!, atArrangedObjectIndexPathindexPath: NSIndexPath)Objective C
- (void)insertObject:(id)objectatArrangedObjectIndexPath:(NSIndexPath *)indexPathОператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
Вставляет
objectsв расположенные объекты древовидного контроллера выстраивают в расположениях, указанных вindexPaths, и добавляет их к содержанию древовидного контроллера.Объявление
Swift
func insertObjects(_objects: [AnyObject], atArrangedObjectIndexPathsindexPaths: [AnyObject])Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Удаляет выбранные объекты древовидного контроллера из содержания.
Объявление
Swift
func remove(_sender: AnyObject?)Objective C
- (void)remove:(id)senderОбсуждение
senderобычно объект, вызвавший этот метод.Специальные замечания
Результат этого метода задерживается до следующей итерации цикла выполнения так, чтобы ошибочный механизм представления мог обеспечить обратную связь как лист.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Удаляет объект в указанном
indexPathв расположенных объектах древовидного контроллера от содержания древовидного контроллера.Объявление
Swift
func removeObjectAtArrangedObjectIndexPath(_indexPath: NSIndexPath)Objective C
- (void)removeObjectAtArrangedObjectIndexPath:(NSIndexPath *)indexPathОператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
Удаляет объекты в указанном
indexPathsв расположенных объектах древовидного контроллера от содержания древовидного контроллера.Объявление
Swift
func removeObjectsAtArrangedObjectIndexPaths(_indexPaths: [AnyObject])Objective C
- (void)removeObjectsAtArrangedObjectIndexPaths:(NSArray *)indexPathsОператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Перемещает указанный древовидный узел в новый индексный путь.
Объявление
Swift
func moveNode(_node: NSTreeNode, toIndexPathindexPath: NSIndexPath)Objective C
- (void)moveNode:(NSTreeNode *)nodetoIndexPath:(NSIndexPath *)indexPathПараметры
nodeДревовидный узел.
indexPathИндексный путь, указывающий новую позицию в содержании древовидного контроллера.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
-
Перемещает указанные древовидные узлы в новый индексный путь.
Объявление
Swift
func moveNodes(_nodes: [AnyObject], toIndexPathstartingIndexPath: NSIndexPath)Objective C
- (void)moveNodes:(NSArray *)nodestoIndexPath:(NSIndexPath *)startingIndexPathПараметры
nodesМассив древовидных узлов.
startingIndexPathИндексный путь, указывающий стартовую позицию для перемещения древовидные узлы в в содержании древовидного контроллера.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
-
childrenKeyPath childrenKeyPathСвойствоКлючевой путь раньше находил дочерние элементы в объектах древовидного контроллера.
Обсуждение
Значение по умолчанию этого свойства
nil.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
Возвращается ключевой путь раньше находил дочерние элементы в указанном древовидном узле.
Объявление
Swift
func childrenKeyPathForNode(_node: NSTreeNode) -> String?Objective C
- (NSString *)childrenKeyPathForNode:(NSTreeNode *)nodeПараметры
nodeДревовидный узел в содержании древовидного контроллера.
Возвращаемое значение
Строка, содержащая ключевой путь в
nodeэто обеспечивает дочерние узлы.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
-
countKeyPath countKeyPathСвойствоКлючевой путь раньше находил число дочерних элементов для узла.
Обсуждение
Указание этого ключевого пути (если данные доступны в объекте модели) может увеличить производительность, но отключает, вставляют и удаляют функциональность.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
Возвращает ключевой путь, обеспечивающий число дочерних элементов для указанного узла.
Объявление
Swift
func countKeyPathForNode(_node: NSTreeNode) -> String?Objective C
- (NSString *)countKeyPathForNode:(NSTreeNode *)nodeПараметры
nodeДревовидный узел в содержании древовидного контроллера.
Возвращаемое значение
Строка, содержащая ключевой путь в
nodeэто обеспечивает число дочерних элементов.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
-
leafKeyPath leafKeyPathСвойствоКлючевой путь, используемый древовидным контроллером, чтобы определить, является ли узел листовым ключом.
Обсуждение
Указание ключевого пути для этого свойства является дополнительным. Если древовидный контроллер в состоянии решить, что узел является вершиной, это может отключить вставку или добавление дочерних элементов к тем узлам.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.4 и позже.
-
Возвращает ключевой путь, указывающий, является ли узел вершиной.
Объявление
Swift
func leafKeyPathForNode(_node: NSTreeNode) -> String?Objective C
- (NSString *)leafKeyPathForNode:(NSTreeNode *)nodeПараметры
nodeДревовидный узел в содержании древовидного контроллера.
Возвращаемое значение
Строка, содержащая ключевой путь в
nodeэто указывает, что узел является вершиной.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
