A megjelenítő elem meghatározza egy általános megjelenítő beállítását. A kiterjesztés biztosíthat egy egyéni előugró menü azonosítót, újradefiniálhatja, hogy a megjelenítő biztosít-e szerkesztőtámogatással rendelkező hivatkozást, egy szűrő-párbeszédablakot és/vagy egy "Elérhető személyre szabások" párbeszédablakot biztosít. Ezen kívül a beágyazott konfigurációs elemek teljes irányítást biztosítanak az előugró menü szerkezete és viselkedése felett.
A viewerContentBinding a meghatározott tartalomkiterjesztéseket ( a
navigatorContent kiterjesztési ponton keresztül) megjelenítőhöz köti (amelyek az
org.eclipse.ui.views kiterjesztési ponton keresztül vannak meghatározva). A
megjelenítőhöz kötött tartalomkiterjesztések láthatóként vannak leírva. Egy
tartalomszolgáltatás (org.eclipse.ui.navigator.INavigatorContentService
) nem
ad vissza a megjelenítőazonosítója számára nem látható kiterjesztéseket.
<!ELEMENT extension (viewer* , viewerContentBinding* , viewerActionBinding* , dragAssistant)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT viewer (popupMenu? , options?)>
<!ATTLIST viewer
viewerId CDATA #REQUIRED
popupMenuId CDATA #IMPLIED>
Alapvető beállításokat biztosít egy megjelenítő jellemzőinek létrehozásához. Az ügyfeleknek meg kell határozniuk egy org.eclipse.ui.views kiterjesztést a nézet rész meghatározásához.
<!ELEMENT viewerContentBinding (includes? , excludes?)>
<!ATTLIST viewerContentBinding
viewerId CDATA #REQUIRED>
Az ügyfeleknek legalább egy viwerContentBinding elemet meg kell határozniuk a
megjelenítő számára látható tartalomkiterjesztéseket és általános szűrőket. Egy
tartalomkiterjesztés vagy általános szűrő látható, ha a tartalomkiterjesztés vagy
általános szűrő azonosítója megfelel egy tartalmazási utasításnak egy
viewerContentBinding alatt és nincs kihagyva egy kizárási utasítás által.
Ha egy tartalomkiterjesztés vagy általános szűrő nem látható egy megjelenítő
számára, akkor a kiterjesztéstől a megjelenítő tartalomszolgáltatása soha nem fog
tartalmat kérni és nem fog megjelenni a felhasználó számára az elérhető szűrők
párbeszédablakban.
Az ügyfelek meghatározhatnak egy felvétel elemet a megjelenítő számára
látható kiterjesztések kiválasztásához és hasonlóképpen egy kizárás elemet
a megjelenítő számára nem látható kiterjesztések számára. Az ügyfelek tovább
finomíthatják a gyökérelemek számára (a ITreeContentProvider.getElements() metóduson
keresztül) az "isRoot" attribútum által kifejezetten lekérdezendő kiterjesztéseket. Ha
legalább egy contentExtension elem "isRoot" attribútumának értéke igaz a
felvétel utasításban, akkor csak ezek a kiterjesztések kerülnek lekérdezésre a
gyökérelemek számára. Az "isRoot" attribútumnak nincs hatása a kizárásokra.
Egy megjelenítő rendelkezhet több meghatározott viewerContentBinding elemmel és ezek
felvétel/kizárás utasításai összesítésre kerülnek a végső viselkedés előállítása
érdekében.
org.eclipse.ui.navigator.CommonNavigator
egy példányát.<!ELEMENT viewerActionBinding (includes? , excludes?)>
<!ATTLIST viewerActionBinding
viewerId CDATA #REQUIRED>
Az ügyfeleknek meg kell határozniuk a megjelenítőjük számára látható
tevékenységszolgáltatókat. Az ügyfelek meghatározhatnak egy felvétel elemet a
megjelenítő számára látható kiterjesztések kiválasztásához és hasonlóképpen egy
kizárás elemet a megjelenítő számára nem látható kiterjesztések számára.
Egy megjelenítő rendelkezhet több meghatározott viewerContentBinding elemmel és
ezek felvétel/kizárás utasításai összesítésre kerülnek a végső viselkedés
előállítása érdekében.
Nem a navigatorContent alá beágyazott actionProvider
meghatározásokhoz az ügyfelek megadhatnak egy egyéni azonosítót. Ha az ügyfelek nem adnak
meg azonosítót, akkor annak alapértelmezett értéke:
"org.eclipse.ui.navigator.actionProvider.X". Azon ügyfelek számára, amelyek
actionProvider elemeket adott azonosítók nélkül kívánnak kiválasztani, az
ügyfeleknek meg kell határozniuk egy viewerActionBinding elemet az alapértelmezett
azonosítóhoz. Ennek megvalósítási módjáért tekintse meg a példák részt.
org.eclipse.ui.navigator.CommonNavigator
egy példányát.<!ELEMENT includes ((contentExtension+) | (actionExtension+))>
Határozza meg minták halmazát a "viewerId" attribútumnak megfelelő megjelenítő számára a tartalomkiterjesztések keresésébe fel kell venni. Ha a tartalmazás és kizárás utasítások keresztezik egymást, akkor a tartalmazás utasításnak van elsőbbsége.
<!ELEMENT excludes ((contentExtension+) | (actionExtension+))>
Határozzon meg egy mintahalmazt, amelyet a "viewerId" attribútumnak megfelelő megjelenítő tartalomkiterjesztésének kereséséből ki kell zárni. Ha a tartalmazás és kizárás utasítások keresztezik egymást, akkor a tartalmazás utasításnak van elsőbbsége.
<!ELEMENT contentExtension EMPTY>
<!ATTLIST contentExtension
pattern CDATA #REQUIRED
isRoot (true | false) >
Jelzi a tartalomkiterjesztés azonosítóját (vagy megfelelő mintát), amelyet a megjelenítő gyökeréhez vagy egy
általános szűrőhöz - amelynek elérhetővé kell válnia a felhasználó számára az "elérhető szűrők" párbeszédablakban
- az ITreeContentProvider.getElements()
vagy az ITreeContentProvider.getChildren()
segítségével le kell kérdezni.
Az ügyfelek megadhatják az "isRoot" attribútumot adott jellemzőkiterjesztések
kiválasztásához azon kiterjesztések újradefiniálásához, amelyek ellenkező esetben
engedélyezettek lennének a megjelenítő bemeneti eleméhez (megjelenítő bemeneti elemének
megfelelő triggerPoints kifejezés alapján).
További információkért tekintse meg a viewerContentBinding dokumentációját.
Az egyedi azonosítóknak
megfelelő minták és reguláris kifejezések. További információkért tekintse meg a
java.util.regex.Pattern
Java(tm) platform dokumentációját.
<!ELEMENT actionExtension EMPTY>
<!ATTLIST actionExtension
pattern CDATA #REQUIRED>
Jelzi, hogy a tevékenységkiterjesztésnek alkalmat ki kell tudnia egészíteni az előugró menüt és a műveletsorokat.
További információkért tekintse meg a viewerContentBinding dokumentációját.
Az egyedi azonosítóknak
megfelelő minták és reguláris kifejezések. További információkért tekintse meg a
java.util.regex.Pattern
Java(tm) platform dokumentációját.
<!ELEMENT popupMenu (insertionPoint*)>
<!ATTLIST popupMenu
id CDATA #IMPLIED
allowsPlatformContributions (true | false) >
Egy popupMenu elem csak akkor határozható meg, ha a megjelenítő elem "popupMenuId"
attribútuma nincs megadva.
A popupMenu elem lehetővé teszi a megjelenítőhöz társított előugró menü további
személyre szabását. A beállítások helyes alkalmazása érdekében a megjelenítő egy
példányának meg kell hatalmaznia egy
org.eclipse.ui.navigator.NavigatorActionService
elemet, amely úgy
viselkedik, mint egy normális org.eclipse.ui.ActionGroup
elem. Ezen funkció kihasználásával
kapcsolatos további információkért tekintse meg az adott API osztály dokumentációját. Az
org.eclipse.ui.navigator.CommonNavigator
példányát használó ügyfelek esetén nincs külön teendő.
Egy popupMenu néhány insertionPoint elemet határoz meg, amelyeket a
közreadók kiegészítéseik értelmes, felhasználóbarát konzisztens listává szervezéséhez
használhatnak.
Ha az ügyfelek csak a megjelenítő elem "popupMenuId" attribútumát adják meg, akkor
az insertionPoint elemek előugró menü által használt halmaza alapértelmezésben az
alábbi listát fogják használni az adott sorrendben:
"group.new" separator="true" "group.goto" "group.open" separator="true" "group.openWith" "group.show" separator="true" "group.edit" separator="true" "group.reorganize" "group.port" "group.generate" separator="true" "group.search" separator="true" "group.build" separator="true" "additions" separator="true" "group.properties" separator="true"
org.eclipse.ui.navigator.ICommonMenuConstants
megfelelő konstansait.
org.eclipse.ui.navigator.CommonActionProviders
által meghatározott módon
(Lásd: org.eclipse.ui.navigator.navigatorContent/actionProvider és
org.eclipse.ui.navigator.navigatorContent/navigatorContent/actionProvider).<!ELEMENT insertionPoint EMPTY>
<!ATTLIST insertionPoint
name CDATA #REQUIRED
separator (true | false) >
Egy beillesztési pontot határoz meg az előugró menühöz. Tartalmazza az ügyfelek által a pontra hivatkozáshoz használandó nevet és meghatározza, hogy hogy a beillesztési pont elválasztóként vagy csoportjelzőként jelenítendő-e meg.
org.eclipse.ui.navigator.CommonActionProvider
, vagy
leíró kiegészítéseknek az org.eclipse.ui.popupMenus kiterjesztési pont
segítségével történő biztosításakor.<!ELEMENT options (property+)>
Beállításokat biztosít a megjelenítő megjelenésének személyre
szabásához a felhasználó számára. Az elérhető tulajdonságokért tekintse meg az
org.eclipse.ui.navigator.INavigatorViewerDescriptor
osztályt.
<!ELEMENT property EMPTY>
<!ATTLIST property
name CDATA #REQUIRED
value CDATA #REQUIRED>
Adjon meg egy név=érték párt. Az érték változatlan formában kerül átadásra a
megjelenítőnek (így az üres karaktersorozatok üres karaktersorozatként kerülnek
továbbításra). Az elérhető tulajdonságokért és azok leírásaiért tekintse meg az
org.eclipse.ui.navigator.INavigatorViewerDescriptor
osztályt.
<!ELEMENT dragAssistant EMPTY>
<!ATTLIST dragAssistant
class CDATA #REQUIRED
viewerId CDATA #REQUIRED>
Egy fogd-és-vidd kisegítő könnyűsúlyú csatlakozópontot biztosít extra átviteli típusok
megadására a húzásadatok beállításához. Ez az elem nem kötelező, mivel az alapvető
org.eclipse.ui.navigator.CommonViewer egy
org.eclipse.ui.util.LocalSelectionTransfer típust biztosít.
Az ügyfelek ezt a kiterjesztést csak alacsony függőségi fával rendelkező könnyűsúlyú
bedolgozókban határozhatják meg. A húzássegédek a megjelenítő létrehozásakor elsőként
töltendők be, ez kikényszeríti az érintett bedolgozók betöltését.
org.eclipse.ui.navigator.CommonDragAdapterAssistant
számára.Az alábbi példa beállítja egy megjelenítő előugró menü azonosítóját.
<extension point=
"org.eclipse.ui.navigator.viewer"
>
<viewer id=
"org.eclipse.testViewer"
popupMenuId=
"org.eclipse.testViewer#PopupMenu"
/>
</extension>
Mivel a megjelenítő popupMenu leszármazott eleme nincs felhasználva a fenti példában, az insertionPoint elemek alapértelmezett halmaza kerül felhasználásra. Ez a halmaz az alábbiak szerint szerint van meghatározva. További információkért tekintse meg a popupMenu dokumentációját.
"group.new" separator="true" "group.goto" "group.open" separator="true" "group.openWith" "group.show" separator="true" "group.edit" separator="true" "group.reorganize" "group.port" "group.generate" separator="true" "group.search" separator="true" "group.build" separator="true" "additions" separator="true" "group.properties" separator="true"
Az példa egy megjelenítőkonfigurációt mutat be, amely egyéni
popupMenu/insertionPoint elemeket határoz meg, de korlátozza az objektum- és
megjelenítőkiegészítéseket az "allowsPlatformContributions" attribútummal. Az ügyfelek a
meghatározott menüt csak a (felső szintű vagy a tartalomkiterjesztésekhez társított)
megjelenítőhöz meghatározott org.eclipse.ui.navigator.CommonActionProvider
elemeken keresztül egészíthetik ki.
Ne feledje el, hogy a "popupMenuId" attribútum a popupMenu elemmel nem párhuzamosan van megadva. Csak az egyik vagy másik (de nem mindkettő) megadása számít érvényes konfigurációnak.
<extension point=
"org.eclipse.ui.navigator.viewer"
>
<viewer viewerId=
"org.eclipse.ui.navigator.resourceContent"
>
<popupMenu allowsPlatformContributions=
"false"
id=
"org.eclipse.ui.navigator.resourceContent#PopupMenu"
>
<insertionPoint name=
"group.new"
/>
<insertionPoint name=
"group.open"
separator=
"true"
/>
<insertionPoint name=
"group.openWith"
/>
<insertionPoint name=
"group.port"
separator=
"true"
/>
<insertionPoint name=
"additions"
separator=
"true"
/>
<insertionPoint name=
"group.properties"
separator=
"true"
/>
</popupMenu>
</viewer>
<viewerContentBinding viewerId=
"org.eclipse.ui.navigator.resourceContent"
>
<includes>
<contentExtension pattern=
"org.eclipse.ui.navigator.resourceContent"
/>
</includes>
</viewerContentBinding>
</extension>
Az alábbi példa meghatározza, hogy az egyik tartalomkiterjesztés (azonosító: "org.eclipse.ui.navigator.resourceContent") a következőnek megfelelő megjelenítőhöz van kötve: "org.eclipse.ui.navigator.resourceContent". (Ebben a példában a tartalomkiterjesztés- és megjelenítőazonosítók megegyeznek, de ez nem szükségszerű.) Ezen kívül minden "org.eclipse.ui.navigator.tests." kezdetű azonosítóval rendelkező tartalomkiterjesztés figyelmen kívül marad.
<extension point=
"org.eclipse.ui.navigator.viewer"
>
<viewerContentBinding viewerId=
"org.eclipse.ui.navigator.resourceContent"
>
<includes>
<contentExtension pattern=
"org.eclipse.ui.navigator.resourceContent"
/>
</includes>
<excludes>
<contentExtension pattern=
"org.eclipse.ui.navigator.tests.*"
/>
</excludes>
</viewerContentBinding>
</extension>
Az alábbi példa egy viewerActionBinding elemet határoz meg az összes (a navigatorContent kiterjesztés alá be nem ágyazott) actionProvider számára, amelyek megfelelnek az "org.acme.actions.*" reguláris kifejezésnek, de az "org.acme.actions.tests.*" kifejezésnek nem. Ez a kifejezés minden "org.acme.actions." de nem "org.acme.actions.tests." kezdetű azonosítóval rendelkező actionProvider elemet láthatóvá tesz az "org.acme.viewer" azonosítójú megjelenítő számára. Természetesen a viewerActionBinding elemek csak azon actionProvider elemekre érvényesek, amelyek nincsenek egy navigatorContent elem alá beágyazva. A beágyazott actionProvider elemek láthatóságát a csatoló navigatorContent elem viewerContentBinding elemei felügyelik.
<extension point=
"org.eclipse.ui.navigator.viewer"
>
<viewerActionBinding viewerId=
"org.acme.viewer"
>
<includes>
<actionExtension pattern=
"org.acme.actions.*"
/>
</includes>
<excludes>
<actionExtension pattern=
"org.acme.actions.tests.*"
/>
</excludes>
</viewerActionBinding>
</extension>
Az alábbi példa az összes, "id" attribútummal nem rendelkező actionProvider elemet láthatóvá teszi az "org.acme.viewer" megjelenítő számára. Az "id" attribútummal nem rendelkező actionProvider elemek alapértelmezett azonosítója: "org.eclipse.ui.navigator.actionProvider.X". Természetesen a viewerActionBinding elemek csak azon actionProvider elemekre érvényesek, amelyek nincsenek egy navigatorContent elem alá beágyazva. A beágyazott actionProvider elemek láthatóságát a csatoló navigatorContent elem viewerContentBinding elemei felügyelik.
<extension point=
"org.eclipse.ui.navigator.viewer"
>
<viewerActionBinding viewerId=
"org.acme.viewer"
>
<includes>
<actionExtension pattern=
"org.eclipse.ui.navigator.actionProvider.*"
/>
</includes>
</viewerActionBinding>
</extension>
Az alábbi példa bemutatja a megjelenítő számára elérhető szabványos tulajdonságokat.
<extension point=
"org.eclipse.ui.navigator.viewer"
>
<viewer popupMenuId=
"org.eclipse.ui.tests.navigator.TestView#PopupMenu"
viewerId=
"org.eclipse.ui.tests.navigator.TestView"
>
<options>
<!-- Hide the
"Available Extensions"
tab in the
"Available Customizations"
dialog (available from the
"Filters"
action -->
<property name=
"org.eclipse.ui.navigator.hideAvailableExtensionsTab"
value=
"true"
/>
<!-- Hide the
"Available Customizations"
dialog completely. This includes hiding the filters and the available content extensions. -->
<property name=
"org.eclipse.ui.navigator.hideAvailableCustomizationsDialog"
value=
"true"
/>
<!-- Hide the
"Link with Editor"
action from the toolbar of the viewer -->
<property name=
"org.eclipse.ui.navigator.hideLinkWithEditorAction"
value=
"true"
/>
<!-- Hide the
"Collapse All"
action from the toolbar of the viewer -->
<property name=
"org.eclipse.ui.navigator.hideCollapseAllAction"
value=
"true"
/>
</options>
</viewer>
</extension>
Copyright (c) 2002, 2005 IBM Corporation és mások.
Minden jog fenntartva. Jelen program és annak kísérőanyagai a csomaghoz
tartozó, illetve a
http://www.eclipse.org/legal/epl-v10.html
címen is elérhető Eclipse Public License 1.0 verziójának hatálya alatt lettek
közzétéve.