내 @execute 메서드 클립 보드/LocalSelectionTransfer에서 선택 항목을 가져올 수 있습니다. 그러나 나는 사용자가 클립 보드에 내용을 어떻게 넣었는지에 따라 어떻게 대처할 것인지 잘 모른다. 콘텐츠 복제 여부를 결정해야합니다. 이것은 내가 가지고있는 것입니다 :무언가가 클립 보드로 복사되거나 잘려 졌는지 확인하는 방법
@Execute
public void execute(@Named(IServiceConstants.ACTIVE_SHELL) Shell shell, @Named(IServiceConstants.ACTIVE_PART) MPart activePart) {
Clipboard clipboard = new Clipboard(shell.getDisplay());
TransferData[] transferDatas = clipboard.getAvailableTypes();
boolean weCanUseIt= false;
for(int i=0; i<transferDatas.length; i++) {
if(LocalSelectionTransfer.getTransfer().isSupportedType(transferDatas[i])) {
weCanUseIt = true;
break;
}
}
if (weCanUseIt) {
@SuppressWarnings("unchecked")
List<Object> objects = ((StructuredSelection)LocalSelectionTransfer.getTransfer().getSelection()).toList();
for(Object o: objects) {
System.out.println(o.getClass());
}
}
}
어떤 아이디어 ???
@Execute 메서드는 무엇입니까? 이것은 다른 부분의 선택을 다루는 방식이 아닙니다. Paste 핸들러에만 이것을 사용합니다. –