2.1
Az org.eclipse.ui.commands
kiterjesztési pont a
command
és category
elem segítségével
parancsokat és parancskategóriákat ad meg. A parancs valamilyen szemantikai
viselkedés ábrázolása, de nem a tényleges megvalósítása. Ez lehetővé teszi a
különböző fejlesztők számára az egyéni részeik számára bizonyos viselkedés
hozzáadását. Például lehet egy megvalósítással rendelkező "beillesztés" parancs
egy szerkesztőben és egy másik megvalósítás egy felfedező felületi elemben.
Ezen megvalósítások a kezelők. A parancsok tekinthetők deklarációs függvénymutatókként
vagy jelzéskezelőkként is.
<!ELEMENT extension (category* , command* , commandParameterType* , keyBinding* , keyConfiguration* , context* , scope* , activeKeyConfiguration?)>
<!ATTLIST extension
id CDATA #IMPLIED
name CDATA #IMPLIED
point CDATA #REQUIRED>
<!ELEMENT command (defaultHandler? , state* , commandParameter*)>
<!ATTLIST command
category CDATA #IMPLIED
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
categoryId CDATA #IMPLIED
defaultHandler CDATA #IMPLIED
returnTypeId CDATA #IMPLIED
helpContextId CDATA #IMPLIED>
Ez az elem parancsokat ad meg. A parancs egy felhasználói kérést ábrázol,
amelyet egy tevékenység kezelhet, és szemantikailag egyedinek kell lennie
a többi parancs között. Ne adjon meg parancsot, ha ugyanezzel a
jelentéssel már van egy megadva. Ha több ilyen elem létezik ugyanabban az
id
attribútumban, akkor csak az utolsó megadott elem (a
bedolgozó-nyilvántartás olvasása érdekében) érvényes. Annak megértéséhez,
hogy a tevékenységek hogyan vannak parancsokhoz csatlakoztatva, tekintse
meg az
org.eclipse.ui.actionSets és
org.eclipse.ui.editorActions
kiterjesztési pontot.
categoryId
elemet. A parancs kategóriájának egyedi azonosítója. Ha a parancs nem ad meg kategóriát, akkor ez továbbra is megjelenik az összes felhasználói felületen más speciálisan kategorizált parancsokkal.
Minimális verziószám: 3.0
Ezen parancs alapértelmezett kezelője (lásd: org.eclipse.ui.bindings kiterjesztési pont). Ha nincs más aktív kezelő, akkor ez a kezelő lesz aktív.
Ez a kezelő ütközni fog az olyan kezelőmeghatározásokkal, amelyek nem adnak meg
activeWhen
feltételeket. Ha egy IExecutableExtension
felületet hoz létre, akkor a defaultHandler
elemet használja
inkább.
Minimális verziószám: 3.1
Egy commandParameterType
azonosítója, amely a parancs által visszaadott
érték típusát jelzi. Egy returnTypeId
megadása lehetővé teszi az ügyfelek
számára a parancs végrehajtását a visszaadott érték egy Java típushoz társítása és karaktersorozat
formátumúvá alakítása érdekében, amely tárolható és/vagy átadható egy másik, azonos
típusú paramétereket elfogadó parancsnak.
Minimális verziószám: 3.2
A parancshoz általánosan viszonyuló súgókontextus azonosítója. A kezelők képesek újradefiniálni ezt a kontextusazonosítót az adott viselkedésükre jellemzőbb súgó biztosítása érdekében.
Minimális verziószám: 3.2
<!ELEMENT category EMPTY>
<!ATTLIST category
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED>
A felhasználói felületen a parancsok az egyszerűbb kezelhetőség érdekében
gyakran kategóriákba vannak szervezve. Ez az elem megadja ezeket a
kategóriákat. A parancsok legfeljebb egy kategóriához adhatók hozzá. Ha több ilyen elem létezik ugyanabban az
id
attribútumban, akkor csak az utolsó megadott elem (a
bedolgozó-nyilvántartás olvasása érdekében) érvényes.
<!ELEMENT commandParameter (values?)>
<!ATTLIST commandParameter
id CDATA #REQUIRED
name CDATA #REQUIRED
values CDATA #IMPLIED
typeId CDATA #IMPLIED
optional (true | false) "true">
Egy olyan paramétert határoz meg, amelyet egy parancsnak meg kell értenie. A paraméter az információk kezelő számára a végrehajtás időpontjában biztosításának egyik módja. Például egy "nézet megjelenítése" parancs elfogadhat egy nézetet paraméterként. A kezelőknek meg kell érteniük ezen paramétereket ahhoz, hogy API-kként legyenek kezelve.
Minimális verziószám: 3.1
org.eclipse.core.commands.IParameterValues
felületet. Ha ez az osztály nincs megadva, akkor meg kell határozni a
részletesebb values
elemet. Tekintse meg az
org.eclipse.core.runtime.IExecutableExtension
felületet.<!ELEMENT commandParameterType EMPTY>
<!ATTLIST commandParameterType
id CDATA #REQUIRED
type CDATA #IMPLIED
converter CDATA #IMPLIED>
Meghatározza egy commandParameter elem objektumtípusát és megadhat egy
org.eclipse.core.commands.AbstractParameterValueConverter
alosztályt
karaktersorozat-paraméter értékek és objektumok közti átalakításhoz.
Minimális verziószám: 3.2
java.lang.Object
kerül felhasználásra paramétertípusként. org.eclipse.core.commands.AbstractParameterValueConverter
osztályt. Az
átalakítónak a type
attribútumban jelzett típusú objektumokat kell
előállítania és bemenetként várnia. Ha ez az osztály nincs megadva, akkor a
paramétertípus karaktersorozat- és objektumértékei közti átalakítás nem lesz elérhető (a
getValueConverter()
metódus a ParameterType
osztályon
null
értéket fog visszaadni). <!ELEMENT values (parameter*)>
<!ATTLIST values
class CDATA #REQUIRED>
A values
attribútum részletesebb változata a
commandParameter
esetén.
Minimális verziószám: 3.1
org.eclipse.core.commands.IParameterValues
felületet. Ha ez az osztály nincs megadva, akkor meg kell határozni a
részletesebb values
elemet. Tekintse meg az
org.eclipse.core.runtime.IExecutableExtension
felületet.<!ELEMENT parameter EMPTY>
<!ATTLIST parameter
name CDATA #REQUIRED
value CDATA #REQUIRED>
A paraméter egy lehetséges értéke.
Minimális verziószám: 3.1
IExecutableExtension
elem számára átadandó
paraméter neve.IExecutableExtension
elem számára átadandó
paraméter értéke.<!ELEMENT defaultHandler (parameter)>
<!ATTLIST defaultHandler
class CDATA #REQUIRED>
A parancs alapértelmezett kezelője. Ha nincs más aktív kezelő, akkor ez a kezelő lesz aktív.
Ez a kezelő ütközni fog az olyan kezelőmeghatározásokkal, amelyek nem adnak meg
activeWhen
feltételeket. Ha nem egy
IExecutableExtension
felületet hoz létre, akkor a
defaultHandler
attribútumot használja inkább.
Minimális verziószám: 3.1
org.eclipse.core.commands.IHandler
felületet
megvalósító osztály.<!ATTLIST state
class CDATA #IMPLIED
id CDATA #REQUIRED>
Az állapotinformációk megosztottak az összes kezelő között és lehetséges a megőrzésük a munkamenetek között. Ez általában hasonló egy jelölőnégyzet állapotához vagy egy kezelő címkéjéhez. Az állapot egyszerűen egy osztály, amely az állapotról gondoskodás érdekében kerül betöltésre. További információkat az API információkban talál.
Minimális verziószám: 3.2
org.eclipse.core.commands.State
felületet. Tekintse meg az API információkat.
Az állapot egyedi azonosítója. Ez az állapot munkamenetek közti tárolására szolgál (ha az
állapot az org.eclipse.jface.commands.PersistentState
példánya). Bizonyos
általános azonosítók (Lásd: org.eclipse.jface.menus.IMenuStateIds
)
értelmezhetők, ha a parancs a menükben vagy az eszköztárakon megjelenítésre kerül. Az
azonosítónak csak az állapotot meghatározó parancson belül kell egyedinek lennie.
<!ATTLIST class
class CDATA #REQUIRED>
A parancs állapotának tárolása érdekében betölthető osztály. Ez az elem akkor kerül
felhasználásra, ha több paramétert kíván átadni egy
org.eclipse.core.runtime.IExecutableExtension
elemnek.
Minimális verziószám: 3.2
org.eclipse.core.commands.State
felületet. Tekintse meg az API információkat. <!ELEMENT keyConfiguration EMPTY>
<!ATTLIST keyConfiguration
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
parent CDATA #IMPLIED
parentId CDATA #IMPLIED>
Ez az elem billentyűkonfigurációkat ad meg. Ha több ilyen elem létezik ugyanabban az
id
attribútumban, akkor csak az utolsó megadott elem (a
bedolgozó-nyilvántartás olvasása érdekében) érvényes. Használja inkább az
"org.eclipse.ui.bindings" kiterjesztési pontot.
<!ELEMENT context EMPTY>
<!ATTLIST context
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
parent CDATA #IMPLIED
parentId CDATA #IMPLIED>
Az elem kontextusokat ad meg. Ha több ilyen elem létezik ugyanabban az
id
attribútumban, akkor csak az utolsó megadott elem (a
bedolgozó-nyilvántartás olvasása érdekében) érvényes. Inkább az
org.eclipse.ui.contexts
kiterjesztési pontot használja.
<!ELEMENT scope EMPTY>
<!ATTLIST scope
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
parent CDATA #IMPLIED>
Ez az elem hatóköröket ad meg. Ha több ilyen elem létezik ugyanabban az
id
attribútumban, akkor csak az utolsó megadott elem (a
bedolgozó-nyilvántartás olvasása érdekében) érvényes.
@elavult Használja inkább az "org.eclipse.ui.contexts" kiterjesztési
pontot.
<!ELEMENT activeKeyConfiguration EMPTY>
<!ATTLIST activeKeyConfiguration
value CDATA #IMPLIED
keyConfigurationId CDATA #IMPLIED>
Ez az elem megadja a kezdeti aktív billentyűkonfigurációt az Eclipse-hez. Ha több ilyen elem létezik, akkor csak az utolsó megadott elem (a bedolgozónyilvántartás olvasása érdekében) érvényes.
Ez az elem kicserélésre került egy beállítással. Ha az alkalmazásnak
módosítania kell az alapértelmezett billentyűbeállítást, akkor adja meg a
következőt a plugin_customization.ini
fájlban:
org.eclipse.ui/KEY_CONFIGURATION_ID=your.default.key.configuration.id
.
id
attribute), amelynek kezdetben aktívnak kell lennie. id
attribute), amelynek kezdetben aktívnak kell
lennie. <!ELEMENT keyBinding EMPTY>
<!ATTLIST keyBinding
configuration CDATA #IMPLIED
command CDATA #IMPLIED
locale CDATA #IMPLIED
platform CDATA #IMPLIED
contextId CDATA #IMPLIED
string CDATA #IMPLIED
scope CDATA #IMPLIED
keyConfigurationId CDATA #IMPLIED
commandId CDATA #IMPLIED
keySequence CDATA #IMPLIED>
Az elem lehetővé teszi billentyűkombinációk parancsokhoz rendelését. Inkább a
key
elemet használja az "org.eclipse.ui.bindings" kiterjesztési
pontban.
java.util.Locale
elemben megadott
formátumnak megfelelően vannak megadva.platform
attribútum lehetséges értékei az
org.eclipse.swt.SWT.getPlatform()
által visszaadott
lehetséges értékek halmaza.schemeId
attribútumot használja a key
elem
esetén az új "org.eclipse.ui.bindings" kiterjesztési pontban.A parancshoz rendelendő billentyűkombináció. A billentyűkombinációk néhány billentyűleütésből állnak, amelyben a billentyűleütés a billentyűzet egy billentyűjének, és esetlegesen néhány módosítónak lenyomása: Ctrl, Alt, Shift és Command. A billentyűleütések szóközökkel vannak elválasztva, a módosítókat pedig '+' karakterek választják el.
A módosító billentyűk is kifejezhetők platformfüggetlen módon. MacOS X rendszeren például a "Command" megnevezést használják a "Ctrl" helyett majdnem minden esetben. Ezért egy "M1" megnevezést biztosítunk, amely a "Ctrl" vagy "Command" billentyűt képezi le a megfelelő módon. Ehhez hasonlóan az "M2" a "Shift", az "M3" az "Alt" és az "M4" a "Ctrl" (MacOS X). Ha több platform létezik, akkor számíthat ezen álnevek leképezésére a megfelelő platform-alapértelmezésekhez.
Ezen karaktersorozat szintaxisa az org.eclipse.ui.internal.keys
elemben van meghatározva. Röviden, a karaktersorozat esetén a rendszer nem
különbözteti meg a kis- és nagybetűket, bár stilisztikailag nagy kezdőbetűket
érdemes használni. Ha a billentyű egy betű, akkor egyszerűen fűzze hozzá a
betűt. Ha a billentyű egy speciális billentyű (pl.: nem ASCII), akkor a
következők egyikét használja: ARROW_DOWN, ARROW_LEFT, ARROW_RIGHT, ARROW_UP,
BREAK, CAPS_LOCK, END, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13,
F14, F15, HOME, INSERT, NUM_LOCK, NUMPAD_0, NUMPAD_1, NUMPAD_2, NUMPAD_3,
NUMPAD_4, NUMPAD_5, NUMPAD_6, NUMPAD_7, NUMPAD_8, NUMPAD_9, NUMPAD_ADD,
NUMPAD_DECIMAL, NUMPAD_DIVIDE, NUMPAD_ENTER, NUMPAD_EQUAL, NUMPAD_MULTIPLY,
NUMPAD_SUBTRACT, PAGE_UP, PAGE_DOWN, PAUSE, PRINT_SCREEN vagy SCROLL_LOCK. Ha a
billentyű egy nem nyomtatható ASCII billentyű, akkor a következők egyikét
használja: BS, CR, DEL, ESC, FF, LF, NUL, SPACE, TAB vagy VT. Ne feledje, hogy
a billentyűzet fő enter/return billentyűje a CR.
Az org.eclipse.ui
bedolgozóban lévő plugin.xml
fájl átfogóan használja az org.eclipse.ui.commands
kiterjesztési pontot.
A kezelők a parancsokkal az org.eclipse.ui.handlers.IHandlerService
használatával regisztrálhatók. Ez különböző munkaterület-összetevőkből (például
munkaterület, munkaterület-ablak, részhely, stb.) a
getService(IHandlerService.class)
hívásával kérhető le.
Általánosságban az összes parancs statikus meghatározása részesítendő előnyben (a
plugin.xml
fájlban). Így a felhasználók billentyűkombinációkat rendelhetnek
a parancsokhoz. Mindazonáltal lehetséges parancsok futás közbeni meghatározása. Ehhez
kérje le egy munkaterület-összetevőből az
org.eclipse.ui.commands.ICommandService
elemet, hívja meg a
getCommand(yourCommandID)
, majd a következő metódust:
Command.define(...)
.
A kezelőállapotoknak létezik néhány alapértelmezett megvalósítása, amelyek hasznosak lehetnek ezen kiterjesztési pont felhasználói számára:
Copyright (c) 2000, 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.