0

CommonNavigator ビューがあり、 addDrag&Dropsupport メソッドの従来の方法でドラッグ アンド ドロップ サポートを追加できません。CommonNavigator を介して File Systen からいくつかのファイルをドロップしたいと考えています。を検索した後、dropAgent をフックするだけで機能します。だから私は次のようにしました- point="org.eclipse.ui.navigator.navigatorContent">

  <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

4

1 に答える 1

0

解決策は非常に簡単でした。ドラッグアンドドロップを特定のタイプに制限するという間違いを犯していました。Object の場合に任意の種類を許可するには、possibledroptargetをオブジェクトとして渡すだけです-

   <possibleDropTargets>
      <or>
         <adapt type="java.lang.Object"/>
      </or>
   </possibleDropTargets>
于 2013-08-15T09:19:41.947 に答える