[英]Eclipse Plugin Development: Listener for change of view of opened document
有沒有辦法監聽用戶是否更改了打開的文檔? (不僅僅是打開/關閉它;當用戶在已打開的文檔之間切換時,它應該可以工作)
最好的問候弗蘭克
我現在的解決方案:
通過Display.asyncExec()在StartupHandler中進行異步調用(以確保啟動Eclipse),在該調用中,我向活動工作台窗口中添加了一個實現IPartListener2的類的新實例:
public void earlyStartup() { PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable() { public void run() { Workbench.getInstance().getActiveWorkbenchWindow().getPartService().addPartListener(new SwitchDocumentListener()); } }); }
創建實現IPartListener2的類:
公共無效partActivated(IWorkbenchPartReference partRef){//做某事}
現在,每次查看的文檔更改時,都會調用partActivated()方法,您可以做出反應。
查看Platform Plugin Developer指南中的“編輯器”部分,然后查看IDocument接口,該接口可讓您注冊文檔更改偵聽器。
我相信是這樣。 您是否看過IResourceChangeListener
和IResourceDeltaVisitor
?
這些位於org.eclipse.core.resources
包中。
實現IResourceChangeListener
您可以通過調用以下方法將其注冊為偵聽器:
ResourcesPlugin.getWorkspace().addResourceChangeListener
並將您的實例傳遞給此方法。
謝謝。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.