Spec-Zone.ru › OpenJDK 8

Класс DragSourceContext

  • java.lang.Object
    • java.awt.dnd.DragSourceContext
Все реализованные интерфейсы:
DragSourceListener, DragSourceMotionListener, Serializable, EventListener

public class DragSourceContext
extends Object
implements DragSourceListener, DragSourceMotionListener, Serializable

Класс DragSourceContext отвечает за управление инициатором протокола перетаскивания и опускания. В частности, он отвечает за управление уведомлениями о событиях перетаскивания для DragSourceListeners и DragSourceMotionListeners, а также за предоставление Transferable, представляющего исходные данные для операции перетаскивания.

Обратите внимание, что сам DragSourceContext реализует интерфейсы DragSourceListener и DragSourceMotionListener. Это позволяет платформенной реализации (экземпляру DragSourceContextPeer ) созданному DragSource, уведомлять DragSourceContext об изменениях состояния в текущей операции. Это позволяет объекту DragSourceContext выступать в качестве посредника между платформой и слушателями, предоставленными инициатором операции перетаскивания.

По умолчанию DragSourceContext устанавливает курсор в соответствии с текущим состоянием операции перетаскивания и опускания. Например, если пользователь выбрал действие перемещения, а указатель находится над целевым объектом, принимающим действие перемещения, отображается курсор перемещения по умолчанию. При нахождении указателя над областью, которая не принимает передачу, отображается курсор «нельзя опустить» по умолчанию.

Данный механизм обработки по умолчанию отключается при установке пользовательского курсора методом setCursor(java.awt.Cursor). При отключении обработки по умолчанию, разработчик должен самостоятельно обновлять курсор, следя за событиями DragSource и вызывая метод setCursor(). В качестве альтернативы, вы можете настроить поведение курсора, предоставив кастомные реализации классов DragSource и DragSourceContext.

Since:
1.2
See Also:
DragSourceListener, DragSourceMotionListener, DnDConstants, Serialized Form

Поля

Модификатор и тип Поле и описание
protected static int CHANGED

Переменная, используемая методом updateCurrentCursor(), указывающая на изменение пользователем операции.

protected static int DEFAULT

Переменная, используемая методом updateCurrentCursor(), указывающая на то, что курсор должен измениться на стандартный (без отпускания) курсор.

protected static int ENTER

Переменная, используемая методом updateCurrentCursor(), указывающая на то, что указатель мыши вошёл в область.

protected static int OVER

Переменная, используемая методом updateCurrentCursor(), указывающая на то, что указатель мыши находится над элементом.

Конструкторы

Конструктор и описание
DragSourceContext(java.awt.dnd.peer.DragSourceContextPeer dscp, DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point offset, Transferable t, DragSourceListener dsl)

Вызывается из DragSource, этот конструктор создаёт новый объект DragSourceContext с заданным DragSourceContextPeer для этого перетаскивания, DragGestureEvent , который инициировал перетаскивание, начальный Cursor для перетаскивания, (необязательный) Image для отображения во время перетаскивания, смещение начала Image от точки "горячей" области в момент срабатывания события, данные объекта Transferable и DragSourceListener , которые будут использованы во время операции перетаскивания и отпускания.

Методы

Модификатор и тип Метод и описание
void addDragSourceListener(DragSourceListener dsl)

Добавить DragSourceListener в этот DragSourceContext , если он ещё не добавлен.

void dragDropEnd(DragSourceDropEvent dsde)

Вызывает dragDropEnd для DragSourceListener , зарегистрированных с этим DragSourceContext и с соответствующим DragSource, и передаёт им указанное DragSourceDropEvent.

void dragEnter(DragSourceDragEvent dsde)

Вызывает dragEnter для DragSourceListener , зарегистрированных с этим DragSourceContext и с соответствующим DragSource, и передаёт им указанное DragSourceDragEvent.

void dragExit(DragSourceEvent dse)

Вызывает dragExit для DragSourceListener , зарегистрированных с этим DragSourceContext и с соответствующим DragSource, и передаёт им указанное DragSourceEvent.

void dragMouseMoved(DragSourceDragEvent dsde)

Вызывает dragMouseMoved для DragSourceMotionListener , зарегистрированных с DragSource , связанным с этим DragSourceContext, и передаёт им указанное DragSourceDragEvent.

void dragOver(DragSourceDragEvent dsde)

Вызывает dragOver для DragSourceListener , зарегистрированных с этим DragSourceContext и с соответствующим DragSource, и передаёт им указанное DragSourceDragEvent.

void dropActionChanged(DragSourceDragEvent dsde)

Вызывает dropActionChanged для DragSourceListener , зарегистрированных с этим DragSourceContext и с соответствующим DragSource, и передаёт им указанное DragSourceDragEvent.

Component getComponent()

Возвращает Component , связанное с этим DragSourceContext.

Cursor getCursor()

Возвращает текущее перетаскивание Cursor.

DragSource getDragSource()

Возвращает DragSource , который создал этот DragSourceContext.

int getSourceActions()

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

Transferable getTransferable()

Возвращает Transferable, связанный с этим DragSourceContext.

DragGestureEvent getTrigger()

Возвращает DragGestureEvent, который первоначально инициировал перетаскивание.

void removeDragSourceListener(DragSourceListener dsl)

Удаляет указанное DragSourceListener из этого DragSourceContext.

void setCursor(Cursor c)

Устанавливает курсор для этой операции перетаскивания на указанный Cursor.

void transferablesFlavorsChanged()

Уведомляет пару об изменениях Transferable's DataFlavor.

protected void updateCurrentCursor(int sourceAct, int targetAct, int status)

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

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Поля

DEFAULT

protected static final int DEFAULT

Используется методом updateCurrentCursor() для указания того, что курсор должен измениться на значение по умолчанию (без опускания) Cursor.

См. также:
Значения константных полей

ENTER

protected static final int ENTER

Используется методом updateCurrentCursor() для указания того, что курсор вошёл в область DropTarget.

См. также:
Значения константных полей

OVER

protected static final int OVER

Используется методом updateCurrentCursor() для указания того, что курсор находится над областью DropTarget.

См. также:
Значения константных полей

CHANGED

protected static final int CHANGED

Используется методом updateCurrentCursor() для указания того, что операция пользователя изменилась.

См. также:
Значения константных полей

Конструкторы

DragSourceContext

public DragSourceContext(java.awt.dnd.peer.DragSourceContextPeer dscp,
                         DragGestureEvent trigger,
                         Cursor dragCursor,
                         Image dragImage,
                         Point offset,
                         Transferable t,
                         DragSourceListener dsl)

Вызванный из DragSource, этот конструктор создает новый DragSourceContext с учетом DragSourceContextPeer для этого Drag, DragGestureEvent который спровоцировал Drag, начального Cursor для Drag, (необязательного) Image для отображения во время Drag, смещения начала Image от точки захвата в момент события-триггера, данных Transferable объекта и DragSourceListener для использования во время операции Drag and Drop.
Если DragSourceContextPeer равно null, выбрасывается NullPointerException.
Если DragGestureEvent равно null, выбрасывается NullPointerException.
Если Cursor равно null, исключение не выбрасывается, и для этой операции перетаскивания активируется поведение стандартного курсора.
Если Image равно null, исключение не выбрасывается.
Если Image не равно null, и смещение равно null, выбрасывается NullPointerException.
Если Transferable равно null, выбрасывается NullPointerException.
Если DragSourceListener равно null, исключение не выбрасывается.

Параметры:
dscp - DragSourceContextPeer для этого drag
trigger - событие-триггер
dragCursor - начальный Cursor для этой операции drag или null для обработки стандартного курсора; см. документацию уровня класса для получения дополнительной информации о механизме обработки курсора во время drag and drop
dragImage - Image для перетаскивания (или null)
offset - смещение начала изображения от точки захвата в момент события-триггера
t - Transferable
dsl - DragSourceListener
Исключения:
IllegalArgumentException - если Component связанное с событием-триггером, равно null.
IllegalArgumentException - если DragSource для события-триггера равно null.
IllegalArgumentException - если действие drag для события-триггера равно DnDConstants.ACTION_NONE.
IllegalArgumentException - если действия источника для DragGestureRecognizer связанные с событием-триггером, равны DnDConstants.ACTION_NONE.
NullPointerException - если dscp, trigger или t равны null, или если dragImage не null, а offset null

Методы

getDragSource

public DragSource getDragSource()

Возвращает DragSource , который инициировал этот DragSourceContext.

Возвращает:
DragSource , который инициировал этот DragSourceContext

getComponent

public Component getComponent()

Возвращает Component , связанный с этим DragSourceContext.

Возвращает:
Component , который инициировал перетаскивание

getTrigger

public DragGestureEvent getTrigger()

Возвращает DragGestureEvent , который первоначально инициировал перетаскивание.

Возвращает:
событие, которое инициировало перетаскивание

getSourceActions

public int getSourceActions()

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

Возвращает:
действия по разрядке, поддерживаемые источником перетаскивания

setCursor

public void setCursor(Cursor c)

Устанавливает курсор для этой операции перетаскивания на указанный Cursor. Если указанный Cursor равен null, поведение по умолчанию для курсора перетаскивания активируется для этой операции перетаскивания, в противном случае — деактивируется.

Параметры:
c - начальный Cursor для этой операции перетаскивания или null для обработки курсора по умолчанию; см. документацию уровня класса для получения дополнительной информации об обработке курсора во время перетаскивания и опускания

getCursor

public Cursor getCursor()

Возвращает текущий курсор перетаскивания Cursor.

Возвращает:
текущий курсор перетаскивания Cursor

addDragSourceListener

public void addDragSourceListener(DragSourceListener dsl)
                           throws TooManyListenersException

Добавляет DragSourceListener к этому DragSourceContext , если он еще не был добавлен. Если DragSourceListener уже существует, этот метод генерирует исключение TooManyListenersException.

Параметры:
dsl - добавляемый DragSourceListener. Обратите внимание, что, хотя null не запрещен, он неприемлем в качестве параметра.
Исключения:
TooManyListenersException - если DragSourceListener уже был добавлен

removeDragSourceListener

public void removeDragSourceListener(DragSourceListener dsl)

Удаляет указанный DragSourceListener из этого DragSourceContext.

Параметры:
dsl - удаляемый DragSourceListener; обратите внимание, что, хотя null не запрещено, он неприемлем в качестве параметра

transferablesFlavorsChanged

public void transferablesFlavorsChanged()

Уведомляет участника, что Transferable изменились DataFlavor.

dragEnter

public void dragEnter(DragSourceDragEvent dsde)

Вызывает dragEnter у зарегистрированных DragSourceListener с этим DragSourceContext и с связанным DragSource, передавая им указанный DragSourceDragEvent.

Определено в:
dragEnter в интерфейсе DragSourceListener
Параметры:
dsde - DragSourceDragEvent

dragOver

public void dragOver(DragSourceDragEvent dsde)

Вызывает dragOver у зарегистрированных DragSourceListener с этим DragSourceContext и с связанным DragSource, передавая им указанный DragSourceDragEvent.

Определено в:
dragOver в интерфейсе DragSourceListener
Параметры:
dsde - DragSourceDragEvent

dragExit

public void dragExit(DragSourceEvent dse)

Вызывает dragExit у зарегистрированных DragSourceListener с этим DragSourceContext и с связанным DragSource, передавая им указанный DragSourceEvent.

Определено в:
dragExit в интерфейсе DragSourceListener
Параметры:
dse - DragSourceEvent

dropActionChanged

public void dropActionChanged(DragSourceDragEvent dsde)

Вызывает dropActionChanged у зарегистрированных DragSourceListener с этим DragSourceContext и с связанным DragSource, передавая им указанный DragSourceDragEvent.

Определено в:
dropActionChanged в интерфейсе DragSourceListener
Параметры:
dsde - DragSourceDragEvent

dragDropEnd

public void dragDropEnd(DragSourceDropEvent dsde)

Вызывает dragDropEnd у зарегистрированных DragSourceListener с этим DragSourceContext и с связанным DragSource, передавая им указанный DragSourceDropEvent.

Указано в:
dragDropEnd в интерфейсе DragSourceListener
Параметры:
dsde - DragSourceDropEvent

dragMouseMoved

public void dragMouseMoved(DragSourceDragEvent dsde)

Вызывает dragMouseMoved у DragSourceMotionListener , зарегистрированных с DragSource , связанным с этим DragSourceContext, и затем передаёт указанный DragSourceDragEvent.

Указано в:
dragMouseMoved в интерфейсе DragSourceMotionListener
Параметры:
dsde - DragSourceDragEvent
С тех пор:
1.4

getTransferable

public Transferable getTransferable()

Возвращает Transferable , связанное с этим DragSourceContext.

Возвращает:
Transferable

updateCurrentCursor

protected void updateCurrentCursor(int sourceAct,
                                   int targetAct,
                                   int status)

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

Параметры:
sourceAct - действия, поддерживаемые источником перетаскивания
targetAct - действие целевого объекта опускания
status - одно из полей DEFAULT, ENTER, OVER, CHANGED

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API