Tevékenységek és kiegészítések

A tevékenységosztályok segítségével UI-n megjelenítésüktől függetlenül adhatók meg felhasználói parancsok. Ez biztosítja azt a rugalmasságot, hogy a bedolgozóban lévő tevékenység megjelenését meg lehessen változtatni a parancsokat valójában végrehajtó kód módosítása nélkül, ha már ki lett választva. A kiegészítőosztályok kezelik a parancsokat ábrázoló aktuális UI elemeket. A kiegészítőosztályokat nem programozza, de néhány munkaterületen és JFace alkalmazás programozási felületen találkozhat velük.

Tevékenységek

Egy tevékenység (IAction) egy végfelhasználó által aktíválható parancsot ábrázol. A tevékenységek jellemzően gombokhoz, menüpontokhoz és eszköztár-elemekhez vannak rendelve.

A tevékenységek nem helyezik magukat az UI-ra, de UI orientált tulajdonságokkal rendelkeznek, mint például a tool tip szöveg, címkeszöveg és kép. Ennek segítségével más osztályok felületi elemeket hozhatnak létre a tevékenység megjelenítéséhez.

Amikor a felhasználó aktiválja a tevékenységet az UI-n, akkor a tevékenység futtatási metódusa meghívásra kerül az aktuális feladat elvégzése érdekében. A futtatási metódus egy általános mintája, hogy lekérdezi a munkaterület-választást és kezeli a kiválasztott objektumokat. Másik közös minta a varázsló vagy párbeszédablak elindítása tevékenység kiválasztásakor.

Az IAction felületet nem kell közvetlenül megvalósítani. Ehelyett alosztályt kell létrehozni az Action osztályhoz. Tekintse át az osztály alosztályait a számos közös tevékenységminta megjelenítéséhez. Az alábbi az "About" tevékenységet valósítja meg. Ez a munkaterület egyik legegyszerűbb tevékenysége.

   public void run() {
      new AboutDialog(workbenchWindow.getShell()).open();
   }

Korábban láttuk az IViewActionDelegate és IEditorActionDelegate munkaterület-felületeket. Ezek a felületek a megjelenítési és szerkesztési tevékenységek munkaterülethez biztosításához használhatók. A munkaterület tevékenység átruházások a társított nézetre vagy szerkesztőre hivatkozással kerülnek inicializálásra. Ezzel az ismerettel a munkaterület-oldalhoz vagy -ablakhoz navigálhatnak a kiválasztások vagy a tevékenység végrehajtásához szükséges egyéb információk elérése érdekében.

Akkor kell megvalósítani saját tevékenységosztályt, ha a bedolgozóban parancsot kíván megadni. Ha más nézetek számára biztosít nézeteket és szerkesztőket, akkor tevékenység átruházásokat fog megvalósítani.

Kiegészítőelemek

A kiegészítőelem (IContributionItem) a tevékenység UI részét ábrázolja. Egy olyan elemet ábrázol, amely egy megosztott UI erőforráson kerül közreadásra, mint például menü- vagy eszközsor.

A kiegészítőelemek tudják, hogyan kell kitölteni egy adott SWT felületi elemet a megfelelő SWT elemmel, amely a közreadást ábrázolja.

A kiegészítőelem létrehozása miatt nem kell aggódnia, amikor tevékenységeket ad közre a munkaterület UI-n. Ezt a rendszer megteszi Ön helyett, amikor a munkaterület UI elemeket hoz létre a megadott tevékenységekhez.

Kiegészítéskezelők

A kiegészítéskezelő (IContributionManager) a kiegészítőelemek gyűjteményét ábrázolja, amely megjelenítésre kerül az UI-n. A megnevezett kiegészítőazonosítók segítségével hozzáadhat és beszúrhat kiegészítőelemeket az elemek megfelelő sorrendbe rakása érdekében. Az elemek azonosító alapján is megkereshetők, és egyéni elemek is eltávolíthatók.

Az IContributionManager minden megvalósítás tudja, hogy hogyan kell kitölteni egy adott SWT felületi elemen ezzel az elemmel. A JFace kiegészítéskezelőt biztosít a menükhöz (IMenuManager), eszköztárakhoz (IToolBarManager), és állapotsorokhoz (IStatusLineManager).

Bedolgozófejlesztőként nem kell megvalósítania ezeket a felületeket, de hivatkozásokat láthat a kezelők egy részére az API metódusokban.