Az áttekintő egy speciális nézet, amely egy általános cél elérése érdekében átvezeti a felhasználót összetett feladatok sorozatán. Az áttekintő például átvezeti a felhasználót az egyszerű Java program létrehozásához, lefordításához és futtatásához szükséges lépéseken. Az áttekintők a Súgó>Áttekintők... menüpontból kerülnek elindításra, de a bevezetőoldalról is elindíthatók.
Az áttekintők az org.eclipse.ui.cheatsheets.cheatSheetContent kiterjesztési pont segítségével kerülnek meg adásra. Az áttekintő tartalma egy külön fájlban kerül megadásra, így egyszerűen lefordítható más nyelvekre.
Az áttekintő közreadása meglehetősen egyszerű. Egy egyszerű Java alkalmazás összeépítése érdekében tekintsük meg a JDT által közreadott áttekintőt.
<extension point="org.eclipse.ui.cheatsheets.cheatSheetContent"> <cheatsheet name="%cheatsheet.helloworld.name" contentFile="$nl$/cheatsheets/HelloWorld.xml" id="org.eclipse.jdt.helloworld"> <description>%cheatsheet.helloworld.desc</description> </cheatsheet> ...Más munkaterület-kiegészítőkhöz hasonlóan az áttekintőhöz név, leírás és azonosító adható meg. A név és a leírás akkor jelenik meg, amikor a felhasználó hozzáfér a Súgó>Áttekintők... listához. Az áttekintő kategóriája akkor is megadható, ha számos áttekintőt kíván elhelyezni egy logikai csoportosításban. Ha nincs kategória megadva, akkor az áttekintő az Egyéb kategóriában jelenik meg.
Az áttekintő valódi munkája a tartalomfájlban történik. A tartalomfájl egy XML fájl, amelynek a neve és helye a contentFile attribútumban van megadva. A fájl elérési útja a bedolgozó könyvtárához viszonyítva van megadva. (A könyvtárnévben ne felejtse el a $nl$ változót használni, amely azt jelenti, hogy a fájl a célkörnyezet nemzeti nyelvének megfelelő könyvtárba kerül.)
Maga a fájlformátum az áttekintő áttekintésinformációit tartalmazza, amelyet a felhasználó által végrehajtott lépések (elemek) leírása követ. A legegyszerűbb formájában az elem csak a felhasználó által végrehajtandó lépés részletes leírása. De egy tevékenység is megadható, amely végrehajthatja a lépést felhasználó helyett. Nézzük meg a Java áttekintő tartalomfájljának (HelloWorld.xml) első részét.
<?xml version="1.0" encoding="UTF-8" ?> <cheatsheet title="Simple Java Application"> <intro href="/org.eclipse.ui.cheatsheets.doc/tasks/tcheatst.htm"> <description> Üdvözli Önt a Hello World Java ismertető. Ez segítséget nyújt a híres "hello world" alkalmazás összeépítéséhez és kipróbálásához. Egy java projektet és egy java osztályt fog létrehozni, amely futáskor a "hello world" szavakat írja ki a konzolra. Kezdjünk neki! </description> </intro> <item href="/org.eclipse.platform.doc.user/concepts/concepts-4.htm" title="A Java perspektíva megnyitása"> <action pluginId="org.eclipse.ui.cheatsheets" class="org.eclipse.ui.internal.cheatsheets.actions.OpenPerspective" param1="org.eclipse.jdt.ui.JavaPerspective"/> <description> A munkaterület tetején lévő menüsoron válassza ki az Ablak->Perspektíva megnyitása->Java menüpontot. Ez a lépés megváltoztatja a perspektívát az Eclipse munkaterület Java fejlesztéshez beállítása érdekében. A "Kattintson a végrehajtáshoz" gombra kattintva a "Java" perspektíva automatikusan megnyílik. </description> </item> ...
A cím és a bevezető információk az áttekintő tetején jelennek meg. Ezután az elemek kerülnek leírásra. Az áttekintő első eleme a Java perspektíva megnyitásának módját írja le. Az action attribútum megad egy osztályt, amely futtathatja a tevékenységet a felhasználó helyett. Az osztálynak meg kell valósítani egy IAction elemet. Ez kényelmes, mivel lehetővé teszi a menü- és eszköztár-kiegészítésekhez írt tevékenységosztályok újrafelhasználását.
A tevékenység osztálya az ICheatSheetAction segítségével is megvalósítható, ha a tevékenység paramétereket használ, vagy ismernie kell az áttekintőt és ennek állapotát. Ebben az esetben a tevékenység átad egy paramétertömböt és egy ICheatSheetManager hivatkozást, így további információkat kérhet az áttekintővel kapcsolatban. A szükséges paraméterek a paramN attribútumok segítségével átadhatók a tevékenység run metódusának.
Ajánlatos, hogy az áttekintőből meghívott tevékenységek sikeres/sikertelen kimenetet adjanak, ha a futó tevékenység meghiúsulhat. (A felhasználó törölheti például a tevékenységet a párbeszédablakból.) További információkért tekintse meg az IAction.notifyResult(boolean) részt.
Az elemeknek nem kell tevékenységeket megadniuk. Ha az elemet a felhasználónak kézzel kell végrehajtania, akkor egyátalán meg kell megadnia tevékenységet. Az alábbiakban látható a Java áttekintő harmadik lépése, amely bemutatja a felhasználó számára az egyszerű alkalmazás kódolásának módját. Ha nincs tevékenység megadva, akkor az elemleírásnak utasítania kell a felhasználót, hogy a feladat befejezése után nyomja meg a megfelelő gombot.
<item href="/org.eclipse.jdt.doc.user/tasks/tasks-54.htm" title="System.out.println sor hozzáadása a main metódushoz"> <description> Most, hogy már megvan a HelloWorld osztály, a "public static void main" metódushoz adja hozzá az alábbi utasítást: System.out.println("Hello world!"); és mentse le a módosításokat. Ha végzett, nyomja meg a "kattintás, ha kész" gombot. </description> </item>A további attribútumok szabályozzák, hogy az elem teljesen kihagyható-e, és hogy mely dokumentumnak mit kell elindítania, ha a felhasználó a lépés során segítséget kér. Az áttekintőn belül megadható attribútumok leírását az org.eclipse.ui.cheatsheets.cheatSheetContent kiterjesztési pont dokumentáció tartalmazza.
Az elem megjelenítésének további rendszerezése érdekében részelemek adhatók meg. Az elemekkel ellentétben a részelemeket nem kell minden rendezésben meglátogatni. A részelemek tevékenységeket is megadhatnak, amelyek a felhasználó számára automatikusan végrehajtják a részfeladatot. A részelem-tevékenységek ugyanúgy vannak leírva, mint az elemtevékenységek.
A feltételes kifejezések segítségével megadhatók áttekintőelemek, amelyek tartalma és viselkedése egy adott feltétel bekövetkezésétől függ. A feltételek a részelem feltétel elemében vannak leírva egy tetszőleges karaktersorozat-értékekkel, amelyek minden lehetőség when attribútumával kerülnek egyeztetésre. A feltételek a ${var} formátummal hivatkoznak az áttekintő-változókra, amelyben a var az áttekintőváltozó nevére hivatkozik. Néhány egyszerű példa segíti a feltételes kifejezések működésének szemléltetését.
A lehetséges részelemek listájából a Feltételes részelemek segítségével kiválasztható egy részelem. Csak az első részelem kerül bele az áttekintőbe, amelynek when attribútuma megfelel a feltételattribútumnak. Például:
<item ...> <conditional-subitem condition="${v1}"> <subitem when="a" label="Step for A." /> <subitem when="b" label="Step for B." /> </conditional-subitem> </item>Ez az elem két lehetséges részelemet ad meg, amelyek a v1 változó értékétől függenek. Ha a változó értéke a, akkor az első részelem kerül megadásra. Ha a változó értéke b, akkor a második részelem kerül megadásra. Ha a változó más értékkel rendelkezik, akkor hiba történik.
A Feltételes tevékenységek a feltételes részelemekhez hasonlóak. A végrehajtás-mikor elem egy feltételt ad meg a lehetséges tevékenységek listájának egyik tevékenységéhez. A feltétel ugyanígy kerül leírásra egy tetszőleges karaktersorozat segítségével, amely gyakran egy változóra hivatkozik. A tevékenység, amelynek when attribútuma megfelel a végrehajtandó feltételnek. Például:
<item ...> <perform-when condition="${v1}"> <action when="a" class="com.example.actionA" pluginId-"com.example" /> <action when="b" class="com.example.actionB" pluginId-"com.example" /> </perform-when> </item>A végrehajtandó feladat a v1 változó alapján kerül kiválasztásra. Ha a változó értéke a vagy b, akkor hiba történik.
Az ismételt részelemek egy olyan részelemet írnak le, amely kiterjeszthető 0, 1 vagy több hasonló részlépésekre. A részlépések egy speciális változó - ${this} - segítségével szabhatók testre. Ezt a változót az values attribútumban megadott értékek helyettesítik. A values attribútum vesszővel elválasztott értékekből álló karaktersorozat. Az értékek listájába kiterjesztett változó használható a values attribútumban. Például:
<item ...> <repeated-subitem values="${v1}"> <subitem label="Step ${this}" /> </repeated-subitem> </item>Ha a változó értéke 1,b,három, akkor három részelem jelenik meg az áttekintőben, amelyek mindegyike egyedi címkével rendelkezik ("1. lépés," "b. lépés," "Harmadik lépés"). A változó használható a címkében vagy a tevékenység-paraméterértékben. A tevékenység végrehajtása során ez az ICheatSheetManager elemből is elérhető.
Néhány esetben szükség lehet az UI többi részének módosítására, ha egy áttekintő aktív. Például rendelkezhet egy szerkesztővel, amely speciális feljegyzéseket jelenít meg, ha az áttekintő átvezeti a felhasználót a szerkesztési feladaton. Ebben az esetben a listener megadható az áttekintő attribútumaként. A listener attribútumnak a Java osztály teljes képzésű nevének kell lennie, amely alosztályokat hoz létre a CheatSheetListener elemhez. A figyelők az ICheatSheetEvent elemmel együtt értesítést kapnak, ha az áttekintő életciklusa módosul, mint például megnyitáskor, bezáráskor vagy befejezéskor.
Az org.eclipse.ui.cheatsheets.cheatSheetItemExtension kiterjesztés tetszőleges attribútumokat adhat közre egy már meglévő áttekintőhöz. A kiterjesztési pont célja annak engedélyezése, hogy a bedolgozó további gombokat vehessen fel, amelyej segítséget nyújtanak a felhasználónak egy adott lépéshez. Ezek a további gombok a súgó ikon mellett jelennek meg.
Ezen mechanizmus használatához az elemdefiníción belül az áttekintő XML fájlban megadható egy tetszőleges attribútum. Az attribútum név megfeleltetésre kerül az org.eclipse.ui.cheatsheets.cheatSheetItemExtension kiterjesztésében közreadott attribúmukkal. Részletes információkért tekintse meg a kiterjesztési pont dokumentációt.