Graphisoft®

Dialog ManagerVersion: 2.0

DGDragDropMsgData

DGDragDropMsgData structure는 드래그 앤 드롭 동작에 대한 정보를 포함하고 있습니다.

    struct DGDragDropMsgData {
      UShort              subMessage;
      UShort              effect;
      UShort              denyFeedback;
      short               xPos;
      short               yPos;
      Int32               insertPos;
      short               relativePos;
      DGDragFormat        rqFormat;
      const void*         sourceFeedback;
      short               feedbackLeft;
      short               feedbackTop;
      short               feedbackRight;
      short               feedbackBottom;
      bool                rightDragCtxMenu;
      const GS::uchar_t*  folderPath;
    };

멤버

subMessage
호출하는 이유입니다.
의미
DG_DRAG_STARTING 드래그 소스 메시지: 드래그 앤 드롭 동작을 막 시작하려고 합니다. 만약 이 메시지에서 리턴 값이 1이면 드래그 시작이 허용된 것입니다. 예외는 드래그가 Edit 텍스트 컨트롤에서 시작되었을 때입니다. 이 경우 리턴 값 0은 허용된 드래그 시작을 의미합니다.
DG_DRAG_START 드래그 소스 메시지: 드래그 앤 드롭 동작이 시작되었습니다. 이것은 커스텀화된 드래그 앤 드롭 데이터 및 피드백을 세트해야 할 때입니다.
DG_DRAG_END 드래그 소스 메시지: 드래그 앤 드롭 동작을 마쳤습니다.
DG_DRAG_SETDELAYEDDATA 이 메시지가 발생했을 때, 당신은 rqFormat (요청된 포맷) 값을 기반으로 하는 지연된 드래그 앤 드롭 데이터를 세트할 수 있습니다.
DG_DRAG_ENTER 드래그 대상 메시지: 마우스가 드래그하는 동안 항목 위로 갔습니다.
DG_DRAG_LEAVE 드래그 대상 메시지: 마우스가 드래그하는 동안 항목을 떠납니다.
DG_DRAG_OVER 드래그 대상 메시지: 마우스가 드래그하는 동안 항목 위에서 움직입니다.
DG_DRAG_DROP 드래그 대상 메시지: 항목이 드롭된 데이터를 가져옵니다.
 
effect
출력 및 입력 파라미터 양쪽에서 사용됩니다. 만약 서브메시지가 DG_DRAG_STARTING이면, 소스에 의해 허용되는 효과들을 지정하기 위해 이 필드를 사용합니다. 만약 현재 서브메시지가 대상 중 하나라면, 필요한 피드백을 제공하기 위해 이 필드를 사용합니다. 다음 값들을 가질 수 있습니다: DG_DRAG_REJECT, DG_DRAG_ACCEPT_COPY, DG_DRAG_ACCEPT_MOVE, DG_DRAG_ACCEPT_LINK, DG_DRAG_ACCEPT, DG_DRAG_DELETE. 이 값들은 bitwise OR로 조합할 수 있습니다. 예를 들면, DG_DRAG_ACCEPTDG_DRAG_ACCEPT_COPY, DG_DRAG_ACCEPT_MOVE, DG_DRAG_ACCEPT_LINK의 조합입니다.
 
denyFeedback
리턴 값: DG_DRAG_REJECT_SEL (대상 선택 취소됨), DG_DRAG_REJECT_INS (대상 삽입선 취소됨) 값들을 기반으로 한 built-in 피드백 기능을 부인합니다.
 
xPos
픽셀 단위의 수평 마우스 위치입니다. 항목 클라이언트 직사각형에 상대적입니다.
 
yPos
픽셀 단위의 수직 마우스 위치입니다. 항목 클라이언트 직사각형에 상대적입니다.
 
insertPos
삽입 위치입니다. 항목 타입에 따라 달라질 수 있습니다. 예를 들면: Edit 텍스트에서는 탈자 기호(caret) 위치를, 트리 뷰와 리스트 뷰와 리스트 박스에서는 항목 식별자를 의미합니다.
 
relativePos
상대적 삽입 위치입니다. 이것은 트리 뷰, 리스트 뷰, 리스트 박스 컨트롤에서 사용할 수 있습니다. 상대적 위치는 다음 값들을 기반으로 합니다: DG_DRAG_INSERT_ON, DG_DRAG_INSERT_UNDER
 
rqFormat
DG_DRAG_SETDELAYEDDATA 메시지가 발생했을 때, 요청된 지연 데이터 포맷을 포함합니다. 이 경우 당신은 DGDragSetData 함수로 요청된 포맷을 세트해야 합니다.
 
sourceFeedback
커스텀화된 피드백 데이터입니다. 플랫폼 의존적인 네이티브 이미지: Mac에서는 CGImage, Windows에서는 HBITMAP 핸들을 사용해야 합니다. 사용자 항목 피드백을 생성하기 위해 사용합니다.
 
feedbackLeft
피드백 이미지 경계 직사각형의 왼쪽입니다.
 
feedbackTop
피드백 이미지 경계 직사각형의 꼭대기입니다.
 
feedbackRight
피드백 이미지 경계 직사각형의 오른쪽입니다.
 
feedbackBottom
피드백 이미지 경계 직사각형의 바닥입니다.
 
rightDragCtxMenu
'Copy/Move/Cancel' 오른쪽 드래그 컨텍스트 메뉴를 가져옵니다.
 
folderPath
지연된 'FILE' 드래그 앤 드롭 위에서 목적지 폴더입니다.

설명

이 structure는 DG_MSG_DRAGDROP 메시지의 msgData 파라미터로만 사용됩니다.

요구사항

버전: DG 2.0.0 또는 이후
헤더: DG.h

참고사항

DG Structure, DG_MSG_DRAGDROP
리스트 뷰 드래그 앤 드롭, 리스트 박스 드래그 앤 드롭, 트리 뷰 드래그 앤 드롭