Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы AppKit ссылка класса NSDraggingSession

Опции
Развертывание Target:

На этой странице
Язык:

NSDraggingSession

NSDraggingSession класс охватывает действие перетаскивания и позволяет модификацию перетаскивания, в то время как происходящий.

Вы запускаете новый сеанс перетаскивания путем вызова NSView метод beginDraggingSessionWithItems:event:source: метод. Этот метод сразу возвращается, и можно далее изменить свойства сеанса перетаскивания. Фактическое перетаскивание начинается в следующем повороте цикла выполнения.

Наследование


Соответствует


Оператор импорта


Swift

import AppKit

Objective C

@import AppKit;

Доступность


Доступный в OS X v10.7 и позже.
  • Возвращает объект области монтажа, содержащий перетаскиваемые данные. (только для чтения)

    Объявление

    Swift

    var draggingPasteboard: NSPasteboard! { get }

    Objective C

    @property(readonly) NSPasteboard *draggingPasteboard

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Средства управления, анимирует ли изображение перетаскивания назад к его начальной точке на отмененном или неработающем, перетаскивают.

    Объявление

    Swift

    var animatesToStartingPositionsOnCancelOrFail: Bool

    Objective C

    @property BOOL animatesToStartingPositionsOnCancelOrFail

    Обсуждение

    Это свойство должно быть сразу установлено после создания сеанса перетаскивания.

    Значение по умолчанию YEStrue.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Когда перетаскивание не по источнику или допустимому месту назначения, управляет формированием перетаскивания.

    Объявление

    Swift

    var draggingFormation: NSDraggingFormation

    Objective C

    @property NSDraggingFormation draggingFormation

    Обсуждение

    Установка этого значения заставляет формирование перетаскивания сразу измениться, если допустимое место назначения не переопределило поведение. Если сеанс перетаскивания еще не запустился, элементы перетаскивания анимируют в формирование непосредственно после запуска. Это настоятельно рекомендовано, чтобы никогда изменить формирование при запуске перетаскивания.

    Значение по умолчанию NSDraggingFormationNone.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Возвращает число, однозначно определяющее сеанс перетаскивания. (только для чтения)

    Объявление

    Swift

    var draggingSequenceNumber: Int { get }

    Objective C

    @property(readonly) NSInteger draggingSequenceNumber

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Перечисляет через каждый элемент перетаскивания.

    Объявление

    Swift

    func enumerateDraggingItemsWithOptions(_ enumOpts: NSDraggingItemEnumerationOptions, forView view: NSView!, classes classArray: [AnyObject]!, searchOptions searchOptions: [NSObject : AnyObject]!, usingBlock block: ((NSDraggingItem!, Int, UnsafeMutablePointer<ObjCBool>) -> Void)!)

    Objective C

    - (void)enumerateDraggingItemsWithOptions:(NSDraggingItemEnumerationOptions)enumOpts forView:(NSView *)view classes:(NSArray *)classArray searchOptions:(NSDictionary *)searchOptions usingBlock:(void (^)(NSDraggingItem *draggingItem, NSInteger idx, BOOL *stop))block

    Параметры

    enumOpts

    Опции перечисления. Посмотрите NSDraggingItemEnumerationOptions для поддерживаемых значений.

    view

    Представление, используемое в качестве основной системы координат для NSDraggingItem экземпляры.

    classArray

    Массив объектов класса.

    Классы должны появиться в массиве в порядке предпочтительный порядок представления. Классы в массиве должны соответствовать NSPasteboardReading Ссылка на протокол.

    searchOptions

    Словарь, указывающий опции совершенствовать поиск элементов области монтажа, например ограничить поиск для регистрации URLs с определенными типами контента. Для допустимых ключей словаря посмотрите Pasteboard_Reading_Options.

    block

    Блок выполнился для перечисления.

    Блок берет три параметра:

    draggingItem

    Ссылка на элемент перетаскивания. draggingFrame из перетаскивания элемент находится в координатном пространстве представления, указанного в view. A view значение nil означает пространство координаты экрана.

    idx

    Индекс элемента в классах.

    stop

    Ссылка на булево значение, которое блок может использовать для остановки перечисления путем установки *остановка в YEStrue; это не должно затрагивать *остановка иначе.

    Обсуждение

    Классы в предоставленном массиве должны реализовать NSPasteboardReading протокол. Классы какао, реализующие этот протокол, включают NSImage, NSString, NSURL, NSColor, NSAttributedString, и NSPasteboardItem. Для каждого элемента на области монтажа каждый класс в предоставленном массиве будет запрошен для типов, это может считать использование readableTypesForPasteboard:. Экземпляр создается из первого класса, найденного в предоставленном массиве, читаемые типы которого соответствуют соответствующий тип, содержавшийся в том элементе области монтажа. Любые экземпляры, которые могли быть созданы из данных элемента области монтажа, возвращаются к вызывающей стороне. Дополнительные опции, такие как ограничение поиска для регистрации URLs с определенными типами контента, могут быть указаны с options словарь. Только объекты требуемых классов возвращаются. Можно всегда гарантировать для получения одного объекта на элемент на области монтажа включением NSPasteboardItem класс в массиве классов.

    Этот метод перечисляет элементы на области монтажа перетаскивания, связанной с этой информацией перетаскивания, а также всеми дополнительными данными, о которых знает информация перетаскивания. Данные области монтажа и дополнительные данные представлены как одна логическая единица, NSDraggingItem экземпляр.

    Для каждого элемента на области монтажа, каждом классе в classArray будет запрошен для типов, это может считать использование readableTypesForPasteboard:. Экземпляр будет создаваться из первого класса, найденного в предоставленном массиве, читаемые типы которого соответствуют соответствующий тип, содержавшийся в том элементе области монтажа. Если экземпляр создается из данных элемента области монтажа, он помещается в NSDraggingItem вместе со свойствами перетаскивания того элемента, такими как изображение перетаскивания. NSDraggingItem экземпляр тогда передается в качестве параметра предоставленному блоку.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

    См. также

    – readObjectsForClasses:options: (Класс NSPasteboard)

  • Текущая позиция курсора перетаскивания в координатах экрана. (только для чтения)

    Объявление

    Swift

    var draggingLocation: NSPoint { get }

    Objective C

    @property(readonly) NSPoint draggingLocation

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Индекс элемента перетаскивания под курсором.

    Объявление

    Swift

    var draggingLeaderIndex: Int

    Objective C

    @property NSInteger draggingLeaderIndex

    Обсуждение

    Индекс к элементу в массиве, переданном как первый параметр NSView метод beginDraggingSessionWithItems:event:source:.

    Значение по умолчанию NSDraggingItem самый близкий к location поле в конечном счете параметр, переданный beginDraggingSessionWithItems:event:source: метод.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.

  • Следующие константы указывают опции перечисления, используемые в enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock: метод.

    Объявление

    Swift

    struct NSDraggingItemEnumerationOptions : RawOptionSetType { init(_ rawValue: UInt) init(rawValue rawValue: UInt) static var Concurrent: NSDraggingItemEnumerationOptions { get } static var ClearNonenumeratedImages: NSDraggingItemEnumerationOptions { get } }

    Objective C

    enum { NSDraggingItemEnumerationConcurrent = NSEnumerationConcurrent, NSDraggingItemEnumerationClearNonenumeratedImages = (1UL << 16), }; typedef NSUInteger NSDraggingItemEnumerationOptions;

    Константы

    • Concurrent

      NSDraggingItemEnumerationConcurrent

      Указывает, что Блочное перечисление должно быть параллельным.

      Порядок вызова недетерминирован и не определен; этот флаг является подсказкой и может быть проигнорирован реализацией при некоторых обстоятельствах; код Блока должен быть безопасным против параллельного вызова.

      Доступный в OS X v10.7 и позже.

    • ClearNonenumeratedImages

      NSDraggingItemEnumerationClearNonenumeratedImages

      Когда следующая опция будет установлена, Набор Приложения автоматически установит imageComponentProvider к nil для всех элементов перетаскивания, не встречающихся classes/searchOptions критерии метода. Эффективно, это скрывает изображение перетаскивания для недопустимых элементов для этого места назначения.

      Доступный в OS X v10.7 и позже.

    Оператор импорта

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

    Доступный в OS X v10.7 и позже.