組件介面
組件不需要實作任何特定的介面,或繼承自任何特定的基礎類別。然而,組件可以選擇性地實作某些介面,以從母項接收回呼。比方說,如果一個組件實作 IFocusable 介面,則其母項會使用該介面來將焦點移到組件上。組件可以直接實作介面,或者實作 IAdaptable,以及為介面提供一個配接器。
組件介面和網站介面一樣在 org.eclipse.core.component.types 延伸點中登錄。區分網站介面和組件介面之間的些許差異,記載在 XML 標記之中。任何外掛程式都可以擴充視圖可實作的介面設定,且可以使用 PDE 外掛程式登錄來尋找所有的這種介面。
工作台提供了下列介面以供組件實作:
介面 |
說明 |
IFocusable |
容許組件實作 setFocus。
|
IPersistable |
容許組件儲存階段作業之間的狀態。 |
IMultiPart |
指出組件有一個作用中子項的記號。 |
ISite |
雖然組件不會實際實作到這個介面,但其他組件介面的實作方式卻視 ISite 而定,才能獲得對其網站的存取權。 |
組件可能也會實作生命週期介面。生命週期介面和一般的組件介面不同,不同之處如下:
- 必須直接實作生命週期介面(不能當成配接器提供);
- 所有組件的相依關係可能也會實作生命週期介面;
- 當生命週期通知傳送到組件時,也會傳送到所有的組件相依關係;
- 生命週期介面是寫在程式中的,而且不是用延伸點來登錄的。
組件支援下列生命週期介面:
介面 |
說明 |
IDisposable |
刪除元件時,會接收通知。 |
INestedComponent |
由多工器的子項實作。
作用中組件變更時,會接收啟動和取消啟動訊息。
|