簡體   English   中英

如何在Eclipse RCP 3中使用dnd打開新的編輯器

[英]How to open a new editor using dnd in Eclipse RCP 3

我需要為我的應用創建拖放。

我在窗口的左側有一棵樹,在窗口的右側有一個空的編輯器區域。 我想從樹中拖動一個元素並拖放到右側。 之后,編輯器標簽將打開。

截圖

我已經完成的工作:我創建了打開所選樹項目的編輯器的按鈕,並且該按鈕起作用了。 當我將項目拖放到現有的編輯器中時,將打開一個新的編輯器。 但是當我沒有任何編輯器(只有空的編輯器區域)時,我無法做同樣的事情

請告訴我該怎么做或應該指定什么,例如放置動作的目標。 提前致謝!

在RCP的worbench窗口顧問程序類中,需要在preWindowOpen方法中設置編輯器區域的拖放傳輸類型和放置適配器。

例如,Eclipse本身使用:

public void preWindowOpen() {
    IWorkbenchWindowConfigurer configurer = getWindowConfigurer();

    configurer.addEditorAreaTransfer(EditorInputTransfer.getInstance());
    configurer.addEditorAreaTransfer(ResourceTransfer.getInstance());
    configurer.addEditorAreaTransfer(FileTransfer.getInstance());
    configurer.addEditorAreaTransfer(MarkerTransfer.getInstance());

    configurer.configureEditorAreaDropListener(new EditorAreaDropAdapter(
            configurer.getWindow()));

請注意, EditorAreaDropAdapter是一個內部類,因此您無法使用它,您將必須編寫自己的放置適配器。 這很可能最終調用IWorbenchPage.openEditor

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM