2013-07-10 73 views
0

我有一個CommonNavigator視圖,並且無法添加對拖放支持的傳統方式addDrag & Dropsupport方法。 我想通過CommonNavigator從File Systen中刪除一些文件。 搜索後,我發現,我只需要掛鉤dropAgent,它會工作。所以我不喜歡以下各項 點=「org.eclipse.ui.navigator.navigatorContent」>如何添加拖放SWT CommonNavigator上的拖放

<navigatorContent 
     contentProvider="com.infineon.stt.session.explorer.ui.SessionContentProvider" 
     id="com.infineon.stt.session.explorer.ui.navigatorContent" 
     labelProvider="com.infineon.stt.session.explorer.ui.SessionLabelProvider" 
     name="Session Navigation Content">    
    <dropAssistant 
      class="com.infineon.stt.session.explorer.ui.ResourceDropAdapterAssistant" 
      id="org.eclipse.ui.navigator.resources.resourceDropAdapter"> 
     <possibleDropTargets> 
      <or> 
      <adapt type="org.eclipse.core.resources.IProject"/> 
      <adapt type="org.eclipse.core.resources.IFolder"/> 
      <adapt type="org.eclipse.core.resources.IFile"/> 
      <adapt type="org.eclipse.core.resources.IWorkspaceRoot"/> 
      </or> 
     </possibleDropTargets> 
    </dropAssistant> 
    <triggerPoints> 
     <instanceof 
       value="com.infineon.stt.session.model.SessionRoot"> 
     </instanceof> 
     </triggerPoints> 

    </navigatorContent> 

但是,即使它沒有工作。 任何建議使情景工作。 我跟進了這個例子 - https://github.com/aptana/studio3/blob/4cada2cfef2969d11bd62fcce7d630a05b6cab64/plugins/com.aptana.explorer/plugin.xml

回答

0

解決方案非常簡單。 我犯了一個限制拖放到特定類型的錯誤。 要允許任何類型的對象,如果我只需要傳遞possibledroptarget作爲對象 -

<possibleDropTargets> 
     <or> 
     <adapt type="java.lang.Object"/> 
     </or> 
    </possibleDropTargets>