簡體   English   中英

Eclipse插件開發:偵聽器,用於更改打開的文檔的視圖

[英]Eclipse Plugin Development: Listener for change of view of opened document

有沒有辦法監聽用戶是否更改了打開的文檔? (不僅僅是打開/關閉它;當用戶在已打開的文檔之間切換時,它應該可以工作)

最好的問候弗蘭克

我現在的解決方案:

  1. 創建一個使用擴展點org.eclipse.ui.startup的StartupHandler
  2. 通過Display.asyncExec()在StartupHandler中進行異步調用(以確保啟動Eclipse),在該調用中,我向活動工作台窗口中添加了一個實現IPartListener2的類的新實例:

     public void earlyStartup() { PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable() { public void run() { Workbench.getInstance().getActiveWorkbenchWindow().getPartService().addPartListener(new SwitchDocumentListener()); } }); } 
  3. 創建實現IPartListener2的類:

    公共無效partActivated(IWorkbenchPartReference partRef){//做某事}

現在,每次查看的文檔更改時,都會調用partActivated()方法,您可以做出反應。

查看Platform Plugin Developer指南中的“編輯器”部分,然后查看IDocument接口,該接口可讓您注冊文檔更改偵聽器。

我相信是這樣。 您是否看過IResourceChangeListenerIResourceDeltaVisitor

這些位於org.eclipse.core.resources包中。

實現IResourceChangeListener您可以通過調用以下方法將其注冊為偵聽器:

ResourcesPlugin.getWorkspace().addResourceChangeListener

並將您的實例傳遞給此方法。

謝謝。

暫無
暫無

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

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