A munkaterület testreszabása

Az egyéni munkaterület viselkedés biztosításának "belépési pontja" a WorkbenchAdvisor megjelölése a munkaterület beállításához. A gazdag ügyfél bedolgozónak ki kell terjesztenie ezt az absztrakt osztályt, hogy biztosítsa az alkalmazás-specifikus konfigurációt a munkaterülethez. A böngészőpélda ezt a BrowserAdvisor osztály segítségével hajtja végre.

	...
	int code = PlatformUI.createAndRunWorkbench(display,
			new BrowserAdvisor());
	...

A munkaterület-tanácsadó felelős a metódusok felülírásáért, hogy beállítsa a munkaterületet a kívánt elrendezéssel és szolgáltatásokkal, mint például a műveletsor-elemek vagy a bevezetőoldal.

A munkaterület életciklusa

A munkaterület-tanácsadó által biztosított életciklus metódusok segítségével az alkalmazás tetszőleges időpontban csatlakoztatható a munkaterület létrehozásához, és befolyásolhatja a viselkedést. A felülírható tanácsadó életciklus-metódusok alábbi listája a WorkbenchAdvisor javadoc dokumentumából származik.

Ahogy láthatjuk, a gazdag ügyfélalkalmazás nagyfokú vezérléssel rendelkezik a munkaterület beállítása és megvalósítása felett. A böngészőpéldában a BrowserAdvisor elsődleges funkciója, hogy a műveletsort beállítsa a böngészőnek megfelelő menüelemekkel. Ezt a fillActionBars metódus hajtja végre:

	public void fillActionBars(IWorkbenchWindow window, IActionBarConfigurer configurer, int flags) {
		...
		BrowserActionBuilder builder = new BrowserActionBuilder(window);
		getWorkbenchConfigurer().getWindowConfigurer(window).setData(BUILDER_KEY, builder); 
		builder.fillActionBars(configurer, flags);
	}

Ebben a metódusban a munkaterület egy speciális tevékenység-összeépítővel kerül beállításra. Ez a tevékenységösszeépítő kitölti a munkaterület műveletsorát. Megtekintjük annak részleteit, hogy a tevékenységek hogyan vannak megadva a Tevékenységek megadása részben. Eddig a munkaterület beállításának módjára koncentráltunk.

Ne feledje el használni a fenti getWorkbenchConfigurer() metódust. Az IWorkbenchConfigurer és IWorkbenchWindowConfigurer a WorkbenchAdvisor elemmel együtt kerül használatra az ablak testreszabása érdekében. Ezen osztályok segítségével felülírható a munkaterület-létrehozás számos aspektusa különböző szinteken. Az IWorkbenchWindowConfigurer például megad egy protokollt, amely feltételezi a vezérlők egy adott konfigurációját a munkaterület-ablakban, mint például a műveletsor, állapotsor, perspektívasor, eszközsáv, stb. Ennek protokollja segítségével testreszabhatja és feltöltheti ezeket az elemeket. Az IWorkbenchConfigurer magasabb szinten működik, ezáltal lehetővé teszi az alkalmazás-specifikus adatok tárolását a munkaterülettel. A WorkbenchAdvisor hozzáférést biztosít ezekhez a beállítókat a fent említett életciklus metódusokban. A WorkbenchAdvisor alacsonyabb szintű metódusai felülírhatók az alapértelmezett viselkedés teljes cseréje érdekében. A munkaterület-tanácsadó például felülírhatja az SWT vezérlőket létrehozó metódusokat a főablak egy teljesen eltérő megvalósítása érdekében.

Más szavakkal a munkaterület számos módon és különféle szinteken is testreszabható, amelyen ezek a technikák használhatók. A WorkbenchAdvisor, IWorkbenchConfigurer és IWorkbenchWindowConfigurer javadoc eleme a rendelkezésre álló protokoll teljes leírását tartalmazza. A megjegyzéseket és alternatív megvalósításokat a BrowserAdvisor teljes megvalósítása tartalmazza.