2013-04-27 6 views
0

몇 시간 동안이 문제에 대한 해결책을 찾은 후에도 저는 여전히 고생했습니다. 당신의 도움에 매우 감사 할 것입니다.도크 끌어서 놓기 osx 소스 응용 프로그램

내 상황은 다음과 같습니다. 응용 프로그램의 도크 아이콘 (.plist에 지정된대로 허용)에서 문서/파일 놓기 (끌어 놓기)에 대한 원본 응용 프로그램을 알고 싶습니다. 실제로 최종 목표는 브라우저 드롭 인 경우 삭제 된 문서/파일의 URL을 파악하는 것입니다. 지금은 응용 프로그램 이름을 알고 있으면 충분합니다. 나는 단순히 드롭을위한 소스를 얻을 수 없다. 드래그 클립 보드 (Drag Clipboard)에서 안정적으로 발견되거나 추론 될 수는 없지만 일부 애플리케이션에서는 이것을 (Chrome과 같이) 사용하지 않는 것으로 보인다.

누구에 대한 실마리가 있습니까?

고맙습니다.

chocozor.

답변

0

당신이 문서에 앱 아이콘에 파일 아이콘을 삭제하는 경우, 당신은 앱 위임의

application:openfile: 

또는

application:openfiles: 

방법을 시도?
NSApplicationDelegate 문서 : https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/NSApplicationDelegate_Protocol/Reference/Reference.html

+0

예 전혀 문제가 같이 메시지 전송 개체에 대한 언급이 없다는 것이다 - draggingEntered (NSDragOperation)에 (ID ) 송신기; 드래그 작업을 허용하는 도크 아이콘에 사용자 정의보기를 배치하려고 시도했지만 apple (https://developer.apple.com/library/mac/)의 드래그 앤 드롭 가이드에 정의 된 드래그 작업이 해당되는 것으로 보입니다. Dock의 사용자 정의보기에 대해 # documentation/Cocoa/Conceptual/DragandDrop/DragandDrop.html # // apple_ref/doc/uid/10000069i)이 비활성화되었습니다. 타일 – chocozor

+0

독 타일의 파일을 삭제하는 데만 사용자 정의보기를 사용하려고합니까? 길 찾기? 그리고 응용 프로그램 타일이 바탕 화면에있을 때 끌어서 놓았습니까? – mcallister

+0

실제로 메시지를 보내는 개체에 대한 참조 (소스 드래깅)에 액세스하기 위해 사용자 지정보기를 사용하려고했습니다. 이렇게하면 [sender draggingPasteboard] 메서드를 호출하고 'Apple URL pasteboard type'을 통해 소스 url과 같은 정보가 들어있는 pasteboard에 액세스 할 수 있습니다. – chocozor