NSCollectionViewDelegate
NSCollectionViewDelegate
протокол определяет дополнительные методы, реализованные делегатами NSCollectionView
объекты.
NSCollectionViewDelegate
предоставляет поддержку и для перетаскивания и для поддержки области монтажа представлениям набора.
Наследование
Не применимый
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.6 и позже.
-
collectionView (_: canDragItemsAtIndexes:withEvent:) - collectionView:canDragItemsAtIndexes:withEvent:
Возвраты, может ли представление набора попытаться инициировать перетаскивание для данного события и элементов.
Объявление
Swift
optional func collectionView(_
collectionView
: NSCollectionView, canDragItemsAtIndexesindexes
: NSIndexSet, withEventevent
: NSEvent) -> BoolObjective C
- (BOOL)collectionView:(NSCollectionView *)
collectionView
canDragItemsAtIndexes:(NSIndexSet *)indexes
withEvent:(NSEvent *)event
Параметры
collectionView
Представление набора, которые отправляют сообщение.
indexes
Индексы предложенных элементов перетаскивания.
event
Мышь вниз событие, инициировавшее перетаскивание.
Возвращаемое значение
YES
true
если элементы могут попытаться инициировать перетаскивание для указанных элементов, иначеNO
false
.Обсуждение
Если делегат не реализует этот метод, то представление набора будет действовать, как будто это возвратилось
YES
true
.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.6 и позже.
-
collectionView (_: validateDrop:proposedIndex:dropOperation:) - collectionView:validateDrop:proposedIndex:dropOperation:
Вызванный для определения допустимой цели отбрасывания.
Объявление
Swift
optional func collectionView(_
collectionView
: NSCollectionView, validateDropdraggingInfo
: NSDraggingInfo, proposedIndexproposedDropIndex
: UnsafeMutablePointer<Int>, dropOperationproposedDropOperation
: UnsafeMutablePointer<NSCollectionViewDropOperation>) -> NSDragOperationObjective C
- (NSDragOperation)collectionView:(NSCollectionView *)
collectionView
validateDrop:(id<NSDraggingInfo>)draggingInfo
proposedIndex:(NSInteger *)proposedDropIndex
dropOperation:(NSCollectionViewDropOperation *)proposedDropOperation
Параметры
collectionView
Представление набора, которые отправляют сообщение.
draggingInfo
Объект, содержащий подробные данные об этой работе перетаскивания.
proposedDropIndex
Предложенный индекс отбрасывания. Этот параметр передается ссылкой и может быть изменен, перенастраивают работу отбрасывания.
proposedDropOperation
Предложенная работа отбрасывания. Этот параметр передается ссылкой и может быть изменен для изменения работы отбрасывания.
Возвращаемое значение
Значение, указывающее, который, перетаскивая работу выполнит источник данных. Это должно возвратить что-то другое, чем
NSDragOperationNone
принять отбрасываниеОбсуждение
На основе положения мыши представление набора предложит предложенный индекс и отбросит работу. Эти значения находятся в / параметрах и могут быть изменены делегатом для перенастройки работы отбрасывания.
Представление набора сделает предложение
NSCollectionViewDropOn
когда расположение перетаскивания ближе к середине элемента, чем любой из его краев. Иначе, это сделает предложениеNSCollectionViewDropBefore
. Можно переопределить это поведение по умолчанию путем измененияproposedDropOperation
илиproposedDropIndex
.Для получения перетаскивают сообщения, необходимо сначала отправить
registerForDraggedTypes:
к представлению набора с типами перетаскивания Вы хотите поддерживать.Необходимо реализовать этот метод для представления набора, чтобы быть местом назначения перетаскивания.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.6 и позже.
-
collectionView (_: acceptDrop:index:dropOperation:) - collectionView:acceptDrop:index:dropOperation:
Вызванный, когда мышь выпущена по представлению набора, ранее позволившему отбрасывание.
Объявление
Swift
optional func collectionView(_
collectionView
: NSCollectionView, acceptDropdraggingInfo
: NSDraggingInfo, indexindex
: Int, dropOperationdropOperation
: NSCollectionViewDropOperation) -> BoolObjective C
- (BOOL)collectionView:(NSCollectionView *)
collectionView
acceptDrop:(id<NSDraggingInfo>)draggingInfo
index:(NSInteger)index
dropOperation:(NSCollectionViewDropOperation)dropOperation
Параметры
collectionView
Представление набора, которые отправляют сообщение.
draggingInfo
Объект, содержащий больше информации об этой работе перетаскивания.
index
Индекс предложенного элемента отбрасывания.
dropOperation
Тип перетаскивания работы.
Возвращаемое значение
YES
true
если работа отбрасывания должна быть принята, иначеNO
false
.Обсуждение
Этот метод вызывают, когда мышь выпущена по представлению набора, ранее удалившему лед для разрешения отбрасывания через
collectionView:validateDrop:proposedIndex:dropOperation:
метод. В это время делегат должен включить данные от области монтажа перетаскивания и обновить содержание представления набора.Необходимо реализовать этот метод для представления набора, чтобы быть местом назначения перетаскивания
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.6 и позже.
-
collectionView (_: draggingImageForItemsAtIndexes:withEvent:offset:) - collectionView:draggingImageForItemsAtIndexes:withEvent:offset:
Отправленный делегату, чтобы позволить созданию пользовательского изображения представлять набор просматривают элементы во время работы перетаскивания.
Объявление
Swift
optional func collectionView(_
collectionView
: NSCollectionView, draggingImageForItemsAtIndexesindexes
: NSIndexSet!, withEventevent
: NSEvent!, offsetdragImageOffset
: NSPointPointer) -> NSImage!Objective C
- (NSImage *)collectionView:(NSCollectionView *)
collectionView
draggingImageForItemsAtIndexes:(NSIndexSet *)indexes
withEvent:(NSEvent *)event
offset:(NSPointPointer)dragImageOffset
Параметры
collectionView
Представление набора, которые отправляют сообщение.
indexes
Индексы элементов перетаскивания.
event
Мышь вниз событие, инициировавшее перетаскивание.
dragImageOffset
В / параметре, который будет первоначально установлен на
NSZeroPoint
. это может быть изменено, чтобы изменить местоположение возвращенного изображения. AdragImageOffset
изNSZeroPoint
заставит изображение центрироваться под мышью.Возвращаемое значение
Изображение, содержащее рендеринг видимых частей представлений для каждого элемента.
Обсуждение
Если делегат не реализует этот метод, представление набора с возвратом использование изображения
draggingImageForItemsAtIndexes:withEvent:offset:
. Вы можете безопасно вызванныйdraggingImageForItemsAtIndexes:withEvent:offset:
наcollectionView
из этого метода.Вы не должны реализовывать этот метод для своего представления набора, чтобы быть источником перетаскивания.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.6 и позже.
-
collectionView (_: namesOfPromisedFilesDroppedAtDestination:forDraggedItemsAtIndexes:) - collectionView:namesOfPromisedFilesDroppedAtDestination:forDraggedItemsAtIndexes:
Вызванный для возврата массива имен файлов, которые получатель обещает создать.
Объявление
Swift
optional func collectionView(_
collectionView
: NSCollectionView, namesOfPromisedFilesDroppedAtDestinationdropURL
: NSURL!, forDraggedItemsAtIndexesindexes
: NSIndexSet!) -> [AnyObject]!Objective C
- (NSArray *)collectionView:(NSCollectionView *)
collectionView
namesOfPromisedFilesDroppedAtDestination:(NSURL *)dropURL
forDraggedItemsAtIndexes:(NSIndexSet *)indexes
Параметры
collectionView
Представление набора, которые отправляют сообщение.
dropURL
Расположение отбрасывания, где создаются файлы.
indexes
Индексы элементов перетаскивания.
Возвращаемое значение
Массив имен файлов (не полные пути) для создаваемых файлов, которые получатель обещает создать.
Обсуждение
Делегат может файл поддержки обещать перетащить путем добавления NSFilesPromisePboardType к области монтажа в
collectionView:writeItemsAtIndexes:toPasteboard:
.Для получения дополнительной информации о файле обещайте перетащить, см. документацию для
NSDraggingSource
протокол иnamesOfPromisedFilesDroppedAtDestination:
.Вы не должны реализовывать этот метод делегата для своего представления набора, чтобы быть источником перетаскивания.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.6 и позже.
-
collectionView (_: writeItemsAtIndexes:toPasteboard:) - collectionView:writeItemsAtIndexes:toPasteboard:
Вызванный после того, как было определено, что перетаскивание должно начаться, но прежде чем было запущено перетаскивание.
Объявление
Swift
optional func collectionView(_
collectionView
: NSCollectionView, writeItemsAtIndexesindexes
: NSIndexSet, toPasteboardpasteboard
: NSPasteboard) -> BoolObjective C
- (BOOL)collectionView:(NSCollectionView *)
collectionView
writeItemsAtIndexes:(NSIndexSet *)indexes
toPasteboard:(NSPasteboard *)pasteboard
Параметры
collectionView
Представление набора, которые отправляют сообщение.
indexes
Индексы элементов для записи в область монтажа.
pasteboard
Область монтажа, содержащая содержание от перетащенных элементов.
Возвращаемое значение
YES
true
начать перетаскивание, иначеNO
false
.Обсуждение
Для запуска перетаскивания необходимо сначала объявить типы области монтажа, поддерживающиеся путем отправки
pasteboard
adeclareTypes:owner:
метод. Вы тогда помещаете данные для элементов в указанных индексах наpasteboard
, и возвратитесьYES
true
от метода.Изображение перетаскивания и другая соответствующая информация перетаскивания будут установлены и предоставлены представлением, как только возвращается этот вызов
YES
true
.Необходимо реализовать этот метод для представления набора, чтобы быть источником перетаскивания.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.6 и позже.