JavaTM Platform
Standard Ed. 6

java.awt.dnd
클래스 DragSourceContext

java.lang.Object 
  상위를 확장 java.awt.dnd.DragSourceContext
모든 구현된 인터페이스:
DragSourceListener , DragSourceMotionListener , Serializable , EventListener


public class DragSourceContext
extends Object
implements DragSourceListener , DragSourceMotionListener , Serializable

DragSourceContext 클래스는, 드래그&드롭 프로토콜의 이니씨에이터측을 관리합니다. 특히,DragSourceListenerDragSourceMotionListener 에의 드래그 이벤트 통지를 관리해, 드래그 조작의 소스 데이터를 나타내는 Transferable 를 제공합니다.  

DragSourceContext 자체는 DragSourceListenerDragSourceMotionListener 인터페이스를 구현하고 있는 것에 주의해 주세요. 이것은,DragSource 로 작성된 플랫폼 피어 (DragSourceContextPeer 인스턴스)가,DragSourceContext 에 대해, 진행중의 조작 상태로 변경이 있던 것을 통지할 수 있도록(듯이) 하기 (위해)때문에입니다. 이것에 의해,DragSourceContext 는 플랫폼과 드래그 조작 이니씨에이터로 제공된 청취자의 사이에,DragSourceContext 자체를 삽입할 수 있습니다.

도입된 버젼:
1.2
관련 항목:
DragSourceListener , DragSourceMotionListener , 직렬화 된 형식

필드의 개요
protected static int CHANGED
          사용자 조작이 변경된 것을 나타내는, updateCurrentCursor()로 사용되는 int 입니다.
protected static int DEFAULT
          Cursor 를 디폴트 (드롭 없음)의 Cursor 로 변경하도록 지시하는, updateCurrentCursor()로 사용되는 int 입니다.
protected static int ENTER
          CursorDropTarget 에 입력된 것을 나타내는, updateCurrentCursor()로 사용되는 int 입니다.
protected static int OVER
          CursorDropTarget 위에 있는 것을 나타내는, updateCurrentCursor()로 사용되는 int 입니다.
 
생성자 의 개요
DragSourceContext (java.awt.dnd.peer.DragSourceContextPeer dscp, DragGestureEvent  trigger, Cursor  dragCursor, Image  dragImage, Point  offset, Transferable  t, DragSourceListener  dsl)
          DragSource 로부터 불려 가 이 생성자 은 이 Drag 에 DragSourceContextPeer 를 제공하는 새로운 DragSourceContext 를 작성합니다.
 
메소드의 개요
 void addDragSourceListener (DragSourceListener  dsl)
           아직 1 개(살)이나 추가되어 있지 않은 경우, 이 DragSourceContextDragSourceListener 를 추가합니다.
 void dragDropEnd (DragSourceDropEvent  dsde)
          이 DragSourceContext, 및 관련하는 DragSource 에 등록된 DragSourceListenerdragDropEnd 를 호출해, 지정된 DragSourceDropEvent 에 건네줍니다.
 void dragEnter (DragSourceDragEvent  dsde)
          이 DragSourceContext, 및 관련하는 DragSource 에 등록된 DragSourceListenerdragEnter 를 호출해, 지정된 DragSourceDragEvent 에 건네줍니다.
 void dragExit (DragSourceEvent  dse)
          이 DragSourceContext, 및 관련하는 DragSource 에 등록된 DragSourceListenerdragExit 를 호출해, 지정된 DragSourceEvent 에 건네줍니다.
 void dragMouseMoved (DragSourceDragEvent  dsde)
          이 DragSourceContext 에 관련지을 수 있었던 DragSource 에 등록된 DragSourceMotionListenerdragMouseMoved 을 호출해, 지정된 DragSourceDragEvent 에 건네줍니다.
 void dragOver (DragSourceDragEvent  dsde)
          이 DragSourceContext, 및 관련하는 DragSource 에 등록된 DragSourceListenerdragOver 를 호출해, 지정된 DragSourceDragEvent 에 건네줍니다.
 void dropActionChanged (DragSourceDragEvent  dsde)
          이 DragSourceContext, 및 관련하는 DragSource 에 등록된 DragSourceListenerdropActionChanged 를 호출해, 지정된 DragSourceDragEvent 에 건네줍니다.
 Component getComponent ()
          DragSourceContext 에 관련한 Component 를 돌려줍니다.
 Cursor getCursor ()
          현재의 드래그 Cursor 를 돌려줍니다.
 DragSource getDragSource ()
          이 DragSourceContext 의 인스턴스를 생성한 DragSource 를 돌려줍니다.
 int getSourceActions ()
          이 DragSourceContext 에 관련한 드래그 조작의 드래그 소스로 지원되고 있는 일련의 드롭 액션을 나타내는 DnDConstants 의 비트 단위의 마스크를 돌려줍니다.
 Transferable getTransferable ()
          DragSourceContext 에 관련한 Transferable 를 돌려줍니다.
 DragGestureEvent getTrigger ()
          드래그를 최초로 트리거한 DragGestureEvent 를 돌려줍니다.
 void removeDragSourceListener (DragSourceListener  dsl)
          지정된 DragSourceListener 를 이 DragSourceContext 로부터 삭제합니다.
 void setCursor (Cursor  c)
          이 드래그 조작의 커서로 지정된 Cursor 를 설정합니다.
 void transferablesFlavorsChanged ()
          TransferableDataFlavor 가 변경된 것을 피어에 통지합니다.
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
Cursor 를 디폴트 (드롭 없음)의 Cursor 로 변경하도록 지시하는, updateCurrentCursor()로 사용되는 int 입니다.

관련 항목:
정수 필드치

ENTER

protected static final int ENTER
CursorDropTarget 에 입력된 것을 나타내는, updateCurrentCursor()로 사용되는 int 입니다.

관련 항목:
정수 필드치

OVER

protected static final int OVER
CursorDropTarget 위에 있는 것을 나타내는, updateCurrentCursor()로 사용되는 int 입니다.

관련 항목:
정수 필드치

CHANGED

protected static final int CHANGED
사용자 조작이 변경된 것을 나타내는, updateCurrentCursor()로 사용되는 int 입니다.

관련 항목:
정수 필드치
생성자 의 상세

DragSourceContext

public DragSourceContext(java.awt.dnd.peer.DragSourceContextPeer dscp,
                         DragGestureEvent  trigger,
                         Cursor  dragCursor,
                         Image  dragImage,
                         Point  offset,
                         Transferable  t,
                         DragSourceListener  dsl)
DragSource 로부터 불려 가 이 생성자 은 이 Drag 에 DragSourceContextPeer 를 제공하는 새로운 DragSourceContext 를 작성합니다. 또, Drag 를 트리거한 DragGestureEvent, Drag 에 사용하는 초기의 Cursor, Drag 의 실행중에 표시하는 (임의의) Image, 이벤트를 트리거한 순간에서의 핫 스포트로부터의 Image 기점의 오프셋(offset),Transferable 주제 데이터, 및 드래그&드롭 조작중에 사용하는 DragSourceListener 도 작성합니다. DragSourceContextPeer 가 null 의 경우는,NullPointerException 가 throw 됩니다.
DragGestureEventnull 의 경우는,NullPointerException 가 throw 됩니다.
Cursornull 의 경우, 예외는 throw 되지 않고, 디폴트의 드래그 커서의 동작이, 이 드래그 조작에 대해서 액티브하게 됩니다.
Imagenull 의 경우, 예외는 throw 되지 않습니다.
Imagenull 가 아니고, 오프셋(offset)가 null 의 경우는,NullPointerException 가 throw 됩니다.
Transferablenull 의 경우는,NullPointerException 가 throw 됩니다.
DragSourceListenernull 의 경우, 예외는 throw 되지 않습니다.

파라미터:
dscp - 이 드래그의 DragSourceContextPeer
trigger - 방아쇠 이벤트
dragCursor - 초기의 Cursor
dragImage - 드래그 하는 Image (또는 null)
offset - 트리거 이벤트의 순간에서의, 핫 스포트로부터의 이미지 원점의 오프셋(offset)
t - Transferable
dsl - DragSourceListener
예외:
IllegalArgumentException - 트리거 이벤트에 관련지을 수 있었던 Componentnull 의 경우
IllegalArgumentException - 트리거 이벤트의 DragSourcenull 의 경우
IllegalArgumentException - 트리거 이벤트의 드래그 액션이 DnDConstants.ACTION_NONE 의 경우
IllegalArgumentException - 트리거 이벤트에 관련지을 수 있었다 DragGestureRecognizer 의 소스 액션이 DnDConstants.ACTION_NONE 와 동일한 경우
NullPointerException - dscp, trigger, 또는 t 가 null 의 경우, 혹은, dragImage 가 null 는 아니고, 오프셋(offset)가 null 의 경우
메소드의 상세

getDragSource

public DragSource  getDragSource()
DragSourceContext 의 인스턴스를 생성한 DragSource 를 돌려줍니다.

반환값:
DragSourceContext 의 인스턴스를 생성한 DragSource

getComponent

public Component  getComponent()
DragSourceContext 에 관련한 Component 를 돌려줍니다.

반환값:
드래그를 개시시킨 Component

getTrigger

public DragGestureEvent  getTrigger()
드래그를 최초로 트리거한 DragGestureEvent 를 돌려줍니다.

반환값:
드래그를 트리거한 Event

getSourceActions

public int getSourceActions()
DragSourceContext 에 관련한 드래그 조작의 드래그 소스로 지원되고 있는 일련의 드롭 액션을 나타내는 DnDConstants 의 비트 단위의 마스크를 돌려줍니다.

반환값:
드래그 소스로 지원되고 있는 드롭 액션

setCursor

public void setCursor(Cursor  c)
이 드래그 조작의 커서로 지정된 Cursor 를 설정합니다. 지정된 Cursornull 의 경우는, 디폴트의 드래그 커서의 동작이, 이 드래그 조작에 대해서 액티브하게 됩니다. null 이외의 경우는, 디폴트의 드래그 커서의 동작이 비액티브하게 됩니다.

파라미터:
c - 표시하는 Cursor. 디폴트의 드래그 커서의 동작을 액티브하게 하는 경우는 null

getCursor

public Cursor  getCursor()
현재의 드래그 Cursor 를 돌려줍니다.  

반환값:
현재의 드래그 Cursor

addDragSourceListener

public void addDragSourceListener(DragSourceListener  dsl)
                           throws TooManyListenersException 
아직 1 개(살)이나 추가되어 있지 않은 경우, 이 DragSourceContextDragSourceListener 를 추가합니다. DragSourceListener 가 벌써 존재하는 경우, 이 메소드는 TooManyListenersException 를 throw 합니다.  

파라미터:
dsl - 추가하는 DragSourceListener null 는 금지되지 않지만, 파라미터로서 받아들일 수 없다

예외:
TooManyListenersException - 다음의 조건이 성립하는 경우: DragSourceListener 가 벌써 추가되고 있는 경우
TooManyListenersException

removeDragSourceListener

public void removeDragSourceListener(DragSourceListener  dsl)
지정된 DragSourceListener 를 이 DragSourceContext 로부터 삭제합니다.

파라미터:
dsl - 삭제하는 DragSourceListener. null 는 금지되지 않지만, 파라미터로서 받아들일 수 없다

transferablesFlavorsChanged

public void transferablesFlavorsChanged()
TransferableDataFlavor 가 변경된 것을 피어에 통지합니다.


dragEnter

public void dragEnter(DragSourceDragEvent  dsde)
DragSourceContext, 및 관련하는 DragSource 에 등록된 DragSourceListenerdragEnter 를 호출해, 지정된 DragSourceDragEvent 에 건네줍니다.

정의:
인터페이스 DragSourceListener 내의 dragEnter
파라미터:
dsde - DragSourceDragEvent

dragOver

public void dragOver(DragSourceDragEvent  dsde)
DragSourceContext, 및 관련하는 DragSource 에 등록된 DragSourceListenerdragOver 를 호출해, 지정된 DragSourceDragEvent 에 건네줍니다.

정의:
인터페이스 DragSourceListener 내의 dragOver
파라미터:
dsde - DragSourceDragEvent

dragExit

public void dragExit(DragSourceEvent  dse)
DragSourceContext, 및 관련하는 DragSource 에 등록된 DragSourceListenerdragExit 를 호출해, 지정된 DragSourceEvent 에 건네줍니다.

정의:
인터페이스 DragSourceListener 내의 dragExit
파라미터:
dse - DragSourceEvent

dropActionChanged

public void dropActionChanged(DragSourceDragEvent  dsde)
DragSourceContext, 및 관련하는 DragSource 에 등록된 DragSourceListenerdropActionChanged 를 호출해, 지정된 DragSourceDragEvent 에 건네줍니다.

정의:
인터페이스 DragSourceListener 내의 dropActionChanged
파라미터:
dsde - DragSourceDragEvent

dragDropEnd

public void dragDropEnd(DragSourceDropEvent  dsde)
DragSourceContext, 및 관련하는 DragSource 에 등록된 DragSourceListenerdragDropEnd 를 호출해, 지정된 DragSourceDropEvent 에 건네줍니다.

정의:
인터페이스 DragSourceListener 내의 dragDropEnd
파라미터:
dsde - DragSourceDropEvent

dragMouseMoved

public void dragMouseMoved(DragSourceDragEvent  dsde)
DragSourceContext 에 관련지을 수 있었던 DragSource 에 등록된 DragSourceMotionListenerdragMouseMoved 을 호출해, 지정된 DragSourceDragEvent 에 건네줍니다.

정의:
인터페이스 DragSourceMotionListener 내의 dragMouseMoved
파라미터:
dsde - DragSourceDragEvent
도입된 버젼:
1.4

getTransferable

public Transferable  getTransferable()
DragSourceContext 에 관련한 Transferable 를 돌려줍니다.

반환값:
Transferable

updateCurrentCursor

protected void updateCurrentCursor(int sourceAct,
                                   int targetAct,
                                   int status)
디폴트의 드래그 커서의 동작이 액티브한 경우, 이 메소드는, 드래그 소스로 지원되는 지정된 액션, 드롭 타겟 액션, 및 상태에 디폴트의 드래그 커서를 설정합니다. 그렇지 않은 경우, 이 메소드는 아무것도 실시하지 않습니다.

파라미터:
sourceAct - 드래그 소스로 지원되고 있는 액션
targetAct - 드롭 타겟 액션
status - 다음의 필드의 언젠가. DEFAULT, ENTER,OVER, CHANGED

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.