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

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

Разработчик

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

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

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

NSDraggingDestination

NSDraggingDestination протокол объявляет методы, которые должен реализовать целевой объект (или получатель) перетащенного изображения. Место назначения автоматически получает NSDraggingDestination сообщения для типов данных области монтажа, для которых это зарегистрировалось как изображение, входят, перемещаются внутри, и затем выходят или выпущены в границах места назначения.

В OS X v10.7 и позже NSDraggingDestination формальный протокол с обновленным интерфейсом. OS X v10.6 поведение был сохранен, но будет отброшен в будущей версии операционной системы. Методы, которые должны быть осуждены, отмечены как таковые.

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


Не применимый

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


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


Swift

import AppKit

Objective C

@import AppKit;

Доступность


Доступный в OS X v10.7 и позже.
  • Вызванный, когда перетащенное изображение вводит целевые границы или кадр; делегируйте работу перетаскивания возвратов для выполнения.

    Объявление

    Swift

    optional func draggingEntered(_ sender: NSDraggingInfo) -> NSDragOperation

    Objective C

    - (NSDragOperation)draggingEntered:(id<NSDraggingInfo>)sender

    Параметры

    sender

    Объект, отправляющий сообщение; используйте его для получения подробных данных о работе перетаскивания.

    Возвращаемое значение

    Один (и только один) констант работы перетаскивания, описанных в NSDragOperation в NSDraggingInfo ссылка. Возвращаемое значение по умолчанию (если этот метод не реализован местом назначения) является значением, возвращенным предыдущим draggingEntered: сообщение.

    Обсуждение

    Вызванный, когда перетащенное изображение вводит место назначения, но только если место назначения зарегистрировалось для типа данных области монтажа, вовлеченного в работу перетаскивания. В частности этот метод вызывается, когда указатель мыши вводит прямоугольник границ места назначения (если это - объект представления), или его прямоугольник кадра (если это - объект окна).

    Этот метод должен возвратить значение, указывающее, который, перетаскивая работу выполнит место назначения, когда будет выпущено изображение. В решении, которое, перетаскивая работу для возврата метод должен оценить перекрытие между обоими операции перетаскивания, позволенные источником (полученный из sender с draggingSourceOperationMask метод), и операции перетаскивания и типы данных области монтажа место назначения сам поддерживает.

    Если ни одна из операций не является надлежащей, этот метод должен возвратиться NSDragOperationNone (это - ответ по умолчанию, если метод не реализован местом назначения). Место назначения все еще получит draggingUpdated: и draggingExited: даже если NSDragOperationNone возвращается этим методом.

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

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

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

    Доступный как часть неофициального протокола до OS X v10.7.

  • Спрашивает целевой объект, хочет ли он получить периодический draggingUpdated: сообщения.

    Объявление

    Swift

    optional func wantsPeriodicDraggingUpdates() -> Bool

    Objective C

    - (BOOL)wantsPeriodicDraggingUpdates

    Возвращаемое значение

    YEStrue если место назначения хочет получить периодический draggingUpdated: сообщения, NOfalse иначе.

    Обсуждение

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

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

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

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

    Доступный как часть неофициального протокола до OS X v10.7.

  • Вызываемый периодически, поскольку изображение сохранено в конечной области, позволив модификацию работы перетаскивания или позиции указателя мыши.

    Объявление

    Swift

    optional func draggingUpdated(_ sender: NSDraggingInfo) -> NSDragOperation

    Objective C

    - (NSDragOperation)draggingUpdated:(id<NSDraggingInfo>)sender

    Параметры

    sender

    Объект, отправляющий сообщение; используйте его для получения подробных данных о работе перетаскивания.

    Возвращаемое значение

    Один (и только один) констант работы перетаскивания, описанных в NSDragOperation в NSDraggingInfo ссылка. Возвращаемое значение по умолчанию (если этот метод не реализован местом назначения) является значением, возвращенным предыдущим draggingEntered: сообщение.

    Обсуждение

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

    Этот метод предоставляет месту назначения возможность изменить работу перетаскивания в зависимости от позиции указателя мыши в целевом представлении или объекте окна. Например, у Вас может быть несколько графики или областей текста, содержавшего в том же представлении и желании адаптировать работу перетаскивания или проигнорировать событие перетаскивания полностью, в зависимости от которого объект под указателем мыши в то время, когда разъединения абонентом перетащенное изображение и performDragOperation: метод вызывается.

    Вы обычно исследуете содержание области монтажа в draggingEntered: метод, где это исследование выполняется только один раз, а не в draggingUpdated: метод, вызывающийся многократно.

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

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

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

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

    Доступный как часть неофициального протокола до OS X v10.7.

  • Реализуйте этот метод, который будет уведомлен, когда работа перетаскивания закончится в некотором другом месте назначения.

    Объявление

    Swift

    optional func draggingEnded(_ sender: NSDraggingInfo?)

    Objective C

    - (void)draggingEnded:(id<NSDraggingInfo>)sender

    Параметры

    sender

    Объект, отправляющий сообщение; используйте его для получения подробных данных о работе перетаскивания.

    Обсуждение

    Этот метод мог бы использоваться местом назначения, делающим авторасширение для разрушений, любой авторасширяется.

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

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

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

    Доступный как часть неофициального протокола до OS X v10.7.

  • Вызванный, когда перетащенное изображение выходит из прямоугольника границ места назначения (в случае объекта представления) или его прямоугольника кадра (в случае объекта окна).

    Объявление

    Swift

    optional func draggingExited(_ sender: NSDraggingInfo?)

    Objective C

    - (void)draggingExited:(id<NSDraggingInfo>)sender

    Параметры

    sender

    Объект, отправляющий сообщение; используйте его для получения подробных данных о работе перетаскивания.

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

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

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

    Доступный как часть неофициального протокола до OS X v10.7.

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

    Объявление

    Swift

    optional func prepareForDragOperation(_ sender: NSDraggingInfo) -> Bool

    Objective C

    - (BOOL)prepareForDragOperation:(id<NSDraggingInfo>)sender

    Параметры

    sender

    Объект, отправляющий сообщение; используйте его для получения подробных данных о работе перетаскивания.

    Возвращаемое значение

    YEStrue если получатель соглашается выполнить работу перетаскивания и NOfalse если нет.

    Обсуждение

    Этот метод вызывается только если новое draggingEntered: или draggingUpdated: сообщение возвратило приемлемое значение перетаскивать-работы.

    Если Вы хотите, чтобы элементы перетаскивания анимировали от их текущего расположения на экране к их заключительному расположению в Вашем представлении, установите объект отправителя animatesToDestination свойство к YEStrue в Вашей реализации этого метода.

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

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

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

    Доступный как часть неофициального протокола до OS X v10.7.

    См. также

    – performDragOperation:

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

    Объявление

    Swift

    optional func performDragOperation(_ sender: NSDraggingInfo) -> Bool

    Objective C

    - (BOOL)performDragOperation:(id<NSDraggingInfo>)sender

    Параметры

    sender

    Объект, отправляющий сообщение; используйте его для получения подробных данных о работе перетаскивания.

    Возвращаемое значение

    Если место назначения принимает данные, они возвращаются YEStrue; иначе это возвращается NOfalse. Значение по умолчанию должно возвратиться NOfalse.

    Обсуждение

    Для этого метода, который будет вызван, предыдущее prepareForDragOperation: сообщение, должно быть, возвратилось YEStrue. Место назначения должно реализовать этот метод для выполнения реальной работы импорта данных области монтажа, представленных изображением.

    Если объект отправителя animatesToDestination был установлен в YEStrue в prepareForDragOperation:, тогда установите любую анимацию для расположения пространства для элементов перетаскивания для анимации к. Также в это время, перечислите через элементы перетаскивания для установки их целевых кадров и конечных изображений.

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

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

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

    Доступный как часть неофициального протокола до OS X v10.7.

    См. также

    – concludeDragOperation:

  • Вызванный, когда работа перетаскивания завершена, сигнализируя получатель для выполнения любой необходимой очистки.

    Объявление

    Swift

    optional func concludeDragOperation(_ sender: NSDraggingInfo?)

    Objective C

    - (void)concludeDragOperation:(id<NSDraggingInfo>)sender

    Параметры

    sender

    Объект, отправляющий сообщение; используйте его для получения подробных данных о работе перетаскивания.

    Обсуждение

    Для этого метода, который будет вызван, предыдущее performDragOperation: должно быть, возвратился YEStrue.

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

    Если sender объект animatesToDestination свойство было установлено в YEStrue в prepareForDragOperation:, тогда изображение перетаскивания все еще видимо. В этой точке необходимо нарисовать заключительное визуальное представление в представлении. Когда этот метод возвращается, изображение перетаскивания удалено, формируют экран. Если Ваше заключительное визуальное представление соответствует визуальное представление в перетаскивании, это - бесшовный переход.

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

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

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

    Доступный как часть неофициального протокола до OS X v10.7.

  • Вызванный, когда должны быть изменены изображения перетаскивания.

    Объявление

    Swift

    optional func updateDraggingItemsForDrag(_ sender: NSDraggingInfo?)

    Objective C

    - (void)updateDraggingItemsForDrag:(id<NSDraggingInfo>)sender

    Параметры

    sender

    Объект, отправляющий сообщение; используйте этот объект получить подробные данные о работе перетаскивания.

    Обсуждение

    В то время как место назначения может изменить изображения перетаскивания в любое время, рекомендуется ожидать, пока этот метод не вызывают прежде, чем обновить изображения перетаскивания.

    Это позволяет системе задерживать изменение изображений перетаскивания, пока не вероятно, что пользователь отбросит на этом месте назначения. Иначе, изображения перетаскивания будут изменяться слишком часто во время перетаскивания, которое было бы недовольно пользователю.

    Во время enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock: можно установить неприемлемые изображения элементов перетаскивания в nil скрыть их или использовать опцию перечисления NSDraggingItemEnumerationClearNonenumeratedImages Если существуют элементы, которые Вы скрываете, то после перечисления, необходимо установить numberOfValidItemsForDrop к числу нескрытых элементов перетаскивания. Однако, если допустимое количество элемента 0, тогда лучше возвратиться NSDragOperationNone от Вашей реализации draggingEntered: и, или draggingUpdated: вместо того, чтобы скрыться все перетаскивают элементы во время перечисления.

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

    Objective C

    @import AppKit;

    Swift

    import AppKit

    Доступность

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