2.1
Org.eclipse.ui.commands
-laajennuspisteen avulla voidaan määrittää komentoja ja komentoluokkia käyttämällä command
- ja category
-elementtejä. Komento on tietyn semanttisen toimintatavan abstrakti kuvaus. Se ei ole toiminnon varsinainen toteutus. Tämän mallin avulla sovelluskehittäjät voivat lisätä yksittäisiin osiin tiettyjä toimintoja. Esimerkiksi määritetyllä liittämiskomennolla voi olla eri toteutus muokkausohjelmassa kuin widget-selausobjektissa. Toteutuksia kutsutaan käsittelytoiminnoiksi. Komentoja voi tarkastella myös esittelevinä funktion osoittimina tai signaalin käsittelytoimintoina.
<!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>
Tämän elementin avulla voidaan määrittää komentoja. Komento vastaa käyttäjän tekemää pyyntöä, jonka jokin toiminto käsittelee. Komentojen nimien pitäisi olla yksilöllisiä. Päällekkäisiä komentoja ei pitäisi määrittää. Jos samalle tunnukselle (id
-määrite) on määritetty useita tällaisia elementtejä, käytetään vain viimeisintä määritettyä elementtiä (siinä järjestyksessä kuin ne luetaan lisäosarekisteristä). Lisätietoja siitä, miten toiminnot liittyvät komentoihin, on laajennuspisteiden org.eclipse.ui.actionSets ja org.eclipse.ui.editorActions ohjeissa.
categoryId
.Tämän komennon luokan yksilöllinen tunnus. Komento näkyy käyttöliittymässä yhdessä luokiteltujen komentojen kanssa, vaikka komennolle ei olisi määritetty luokkaa.
Alkaen versiosta 3.0
Tämän komennon oletuskäsittelytoiminto (lisätietoja on org.eclipse.ui.bindings-laajennuspisteen ohjeessa). Tämä käsittelytoiminto on aktiivinen, jos muita käsittelytoimintoja ei ole aktivoitu. Tämä käsittelytoiminto aiheuttaa ristiriitoja sellaisten muiden käsittelytoimintomääritysten kanssa, joissa ei ole activeWhen
-ehtoja. Jos luot IExecutableExtension
-laajennuksen, voit käyttää defaultHandler
-elementtiä tämän elementin sijasta.
Alkaen versiosta 3.1
Kohteen commandParameterType
tunnus, joka osoittaa komennon palauttaman arvon lajin. Kohteen returnTypeId
määrityksen jälkeen komennon toteuttavat työasemat voivat yhdistää palautetun arvon Java-lajiin ja muuntaa arvon merkkijonomuotoon, jonka voi tallentaa ja välittää toiselle samanlaisia parametreja hyväksyvälle komennolle.
Alkaen versiosta 3.2
Tähän komentoon yleisesti liittyvän ohjekontekstin tunnus. Käsittelijät voivat ohittaa tämän kontekstin tunnuksen, jos haluat antaa ohjeita, jotka koskevat tarkemmin juuri niiden toimintaa.
Alkaen versiosta 3.2
<!ELEMENT category EMPTY>
<!ATTLIST category
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED>
Käyttöliittymässä komennot on usein luokiteltu niiden hallinnan helpottamiseksi. Käytettävät luokat voidaan määrittää tämän elementin avulla. Komento voi kuulua vain yhteen luokkaan. Jos samalle tunnukselle (id
-määrite) on määritetty useita tällaisia elementtejä, käytetään vain viimeisintä määritettyä elementtiä (siinä järjestyksessä kuin ne luetaan lisäosarekisteristä).
<!ELEMENT commandParameter (values?)>
<!ATTLIST commandParameter
id CDATA #REQUIRED
name CDATA #REQUIRED
values CDATA #IMPLIED
typeId CDATA #IMPLIED
optional (true | false) "true">
Tämä elementti määrittää komennon tukeman parametrin. Parametrin avulla voi välittää käsittelytoiminnolla lisätietoja suorituksen aikana. Esimerkiksi komennossa, joka tuo näkyviin näkymän, parametri voisi olla näkymän nimi. Käsittelytoimintojen pitää pystyä tulkitsemaan nämä parametrit, joten niitä tulee käsitellä kuin ohjelmointirajapintoja.
Alkaen versiosta 3.1
org.eclipse.core.commands.IParameterValues
-liittymä. Jos tätä luokkaa ei määritetä, on määritettävä tätä laajempi values
-elementti. Lisätietoja on org.eclipse.core.runtime.IExecutableExtension
-laajennuksen ohjeessa.<!ELEMENT commandParameterType EMPTY>
<!ATTLIST commandParameterType
id CDATA #REQUIRED
type CDATA #IMPLIED
converter CDATA #IMPLIED>
Määrittää kohteen commandParameter objektin lajin ja voi määrittää aliluokanorg.eclipse.core.commands.AbstractParameterValueConverter
muuntamaan merkkijonoparametrin arvoja ja objekteja.
Alkaen versiosta 3.2
java.lang.Object
.org.eclipse.core.commands.AbstractParameterValueConverter
-laajennus. Muuntotoiminnon tulisi tuottaa ja kuluttaa senlajisia objekteja kuin määritteessä type
osoitetaan. Jos tätä luokkaa ei määritetä, mahdollisuus muuntaa merkkijonon ja objektin arvoja tässä parametrin lajissa ei ole käytettävissä (getValueConverter()
luokassa ParameterType
palauttaa arvonnull
).<!ELEMENT values (parameter*)>
<!ATTLIST values
class CDATA #REQUIRED>
Tämä on commandParameter
-elementin values
-määritteen laaja versio.
Alkaen versiosta 3.1
org.eclipse.core.commands.IParameterValues
-liittymä. Jos tätä luokkaa ei määritetä, on määritettävä tätä laajempi values
-elementti. Lisätietoja on org.eclipse.core.runtime.IExecutableExtension
-laajennuksen ohjeessa.<!ELEMENT parameter EMPTY>
<!ATTLIST parameter
name CDATA #REQUIRED
value CDATA #REQUIRED>
Parametrin mahdollinen arvo.
Alkaen versiosta 3.1
IExecutableExtension
-laajennukselle välitettävän parametrin nimi.IExecutableExtension
-laajennukselle välitettävän parametrin arvo.<!ELEMENT defaultHandler (parameter)>
<!ATTLIST defaultHandler
class CDATA #REQUIRED>
Tämän komennon oletuskäsittelytoiminto. Tämä käsittelytoiminto on aktiivinen, jos muita käsittelytoimintoja ei ole aktivoitu. Tämä käsittelytoiminto aiheuttaa ristiriitoja sellaisten muiden käsittelytoimintomääritysten kanssa, joissa ei ole activeWhen
-ehtoja. Jos et luo IExecutableExtension
-laajennusta, voit käyttää defaultHandler
-määritettä tämän elementin sijasta.
Alkaen versiosta 3.1
org.eclipse.core.commands.IHandler
-liittymän.<!ATTLIST state
class CDATA #IMPLIED
id CDATA #REQUIRED>
Kaikkien käsittelytoimintojen yhdessä käyttämät tilatiedot, jotka voivat säilyä istunnosta toiseen. Tämä tarkoittaa yleensä valintaruudun tilaa tai käsittelytoiminnon nimiötä. Tila on luokka, joka ladataan huolehtimaan tilasta. Lisätietoja on kohdassa API-tiedot.
Alkaen versiosta 3.2
org.eclipse.core.commands.State
. Lisätietoja on kohdassa API-tiedot.
Tämän tilan yksilöllinen tunnus. Sitä käytetään tilan säilyttämiseen istuntojen välillä (jos tila on kohteen org.eclipse.jface.commands.PersistentState
ilmentymä). Tietyt yleiset tunnukset (katso
org.eclipse.jface.menus.IMenuStateIds
) ymmärretään, kun komentoa hahmonnetaan valikoissa tai työkaluriveillä. Tunnuksen tarvitsee olla yksilöllinen vain tilan määrittävässä komennossa.
<!ATTLIST class
class CDATA #REQUIRED>
Luokka, jonka voi ladata tallentamaan tämän komennon tilan. Tätä elementtiä käytetään, jos haluat välittää useita parametreja kohteelle org.eclipse.core.runtime.IExecutableExtension
.
Alkaen versiosta 3.2
org.eclipse.core.commands.State
. Lisätietoja on kohdassa API-tiedot.<!ELEMENT keyConfiguration EMPTY>
<!ATTLIST keyConfiguration
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
parent CDATA #IMPLIED
parentId CDATA #IMPLIED>
Tämän elementin avulla voidaan tehdä näppäinmääritykset. Jos samalle tunnukselle (id
-määrite) on määritetty useita tällaisia elementtejä, käytetään vain viimeisintä määritettyä elementtiä (siinä järjestyksessä kuin ne luetaan lisäosarekisteristä). Käytä tämän elementin sijasta org.eclipse.ui.bindings-laajennuspistettä.
<!ELEMENT context EMPTY>
<!ATTLIST context
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
parent CDATA #IMPLIED
parentId CDATA #IMPLIED>
Tämän elementin avulla määritetään käyttöyhteydet (kontekstit). Jos samalle tunnukselle (id
-määrite) on määritetty useita tällaisia elementtejä, käytetään vain viimeisintä määritettyä elementtiä (siinä järjestyksessä kuin ne luetaan lisäosarekisteristä). Käytä tämän elementin sijasta org.eclipse.ui.contexts-laajennuspistettä.
<!ELEMENT scope EMPTY>
<!ATTLIST scope
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
parent CDATA #IMPLIED>
Tämän elementin avulla määritetään vaikutusalueet. Jos samalle tunnukselle (id
-määrite) on määritetty useita tällaisia elementtejä, käytetään vain viimeisintä määritettyä elementtiä (siinä järjestyksessä kuin ne luetaan lisäosarekisteristä).
@deprecated - käytä org.eclipse.ui.contexts-laajennuspistettä tämän sijasta.
<!ELEMENT activeKeyConfiguration EMPTY>
<!ATTLIST activeKeyConfiguration
value CDATA #IMPLIED
keyConfigurationId CDATA #IMPLIED>
Tämän elementin avulla määritetään, mikä objekti Eclipse-ympäristössä on aktiivinen aloitettaessa. Jos näitä elementtejä on useita, käytetään vain viimeisintä määritettyä elementtiä (siinä järjestyksessä kuin ne luetaan lisäosarekisteristä).
Tämä elementti on korvattu oletusasetuksella. Jos sovellusta varten on määritettävä jokin muu kuin oletusarvo, tee seuraava määritys plugin_customization.ini
-tiedostoon: org.eclipse.ui/KEY_CONFIGURATION_ID=your.default.key.configuration.id
.
id
-määrite), jonka halutaan olevan aktiivinen aloitettaessa.id
-määrite), jonka halutaan olevan aktiivinen aloitettaessa.<!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>
Tämän elementin avulla komento voidaan yhdistää näppäinyhdistelmään. Käytä tämän elementin sijasta org.eclipse.ui.bindings-laajennuspisteen key
-elementtiä.
java.util.Locale
-määrityksen mukaisessa muodossa.Platform
-määritteen kelvolliset arvot ovat org.eclipse.swt.SWT.getPlatform()
-metodin palauttamat arvot.key
-elementin schemeId
-määritettä tämän sijasta.komentoon yhdistettävä näppäinyhdistelmä. Näppäinyhdistelmät kuvaavat yhden tai useamman näppäimistön näppäimen painamista. Näppäinyhdistelmään voi kuulua jokin seuraavista erikoisnäppäimistä: Ctrl, Alt, Vaihto tai komentonäppäin. Näppäinten nimet erotellaan tyhjämerkeillä ja erikoisnäppäimet plusmerkeillä (+).
Erikoisnäppäimet voidaan määrittää muodossa, joka ei ole käyttöympäristökohtainen. Esimerkiksi MacOS X -käyttöjärjestelmässä komentonäppäin vastaa lähes aina Ctrl-näppäintä. Tämän takia Ctrl- ja komentonäppäimille on määritetty yhteinen määritystunnus M1. Vaihtonäppäimen määritystunnus on vastaavasti M2, Alt-näppäimen M3 ja Ctrl-näppäimen M4 (MacOS X -käyttöjärjestelmä). Mikäli käyttöympäristötukea laajennetaan, näille valenimille määritetään vastaavat käyttöympäristön oletusarvot.
Tämän merkkijonon muoto on määritetty org.eclipse.ui.internal.keys
-määrityksessä. Perusehdot ovat, että merkkijonon kirjainkoko ei ole merkitsevä. Tosin tyylisyistä suositellaan käytettäväksi isoja kirjaimia. Kirjainnäppäimen voi määrittää vain lisäämällä vastaavan kirjaimen. Erikoisnäppäimen (eli muilla kuin ASCII-merkeillä ilmaistun näppäimen) voi lisätä seuraavilla määrityksillä: ARROW_DOWN (alanuolinäppäin), ARROW_LEFT (vasen nuolinäppäin), ARROW_RIGHT (oikea nuolinäppäin), ARROW_UP (ylänuolinäppäin), 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 (numeronäppäimistön 0), NUMPAD_1 (NUMPAD = numeronäppäimistön näppäin), NUMPAD_2, NUMPAD_3, NUMPAD_4, NUMPAD_5, NUMPAD_6, NUMPAD_7, NUMPAD_8, NUMPAD_9, NUMPAD_ADD (plusnäppäin), NUMPAD_DECIMAL (pilkku), NUMPAD_DIVIDE (jakonäppäin), NUMPAD_ENTER, NUMPAD_EQUAL (yhtäsuuruusnäppäin), NUMPAD_MULTIPLY (kertonäppäin), NUMPAD_SUBTRACT (miinusnäppäin), PAGE_UP, PAGE_DOWN, PAUSE, PRINT_SCREEN ja SCROLL_LOCK. Jos näppäintä vastaava merkki ei ole tulostettava ASCII-merkki, on käytettävä seuraavia määrityksiä: BS (askelpalautin), CR (rivinpalautin), DEL, ESC, FF (sivunvaihto), LF (rivinvaihto), NUL (tyhjämerkki), SPACE (välilyönti), TAB (sarkain) ja VT (pystysarkain). CR-määritys vastaa kirjainnäppäimistön Enter-/Return-näppäintä.
Org.eclipse.ui
-lisäosan plugin.xml
-tiedostossa hyödynnetään org.eclipse.ui.commands
-laajennuspistettä laajasti.
Käsittelijät voi rekisteröidä komennoilla käyttäen kohdetta org.eclipse.ui.handlers.IHandlerService
. Sen voi noutaa työympäristön eri komponenteista (esimerkiksi työympäristö, työympäristön ikkuna, osasivusto) kutsumalla kohdetta getService(IHandlerService.class)
.
Yleensä on suositeltavaa esitellä kaikki komennot staattisesti (tiedostossa plugin.xml
). Näin käyttäjät voivat liittää näppäinsidonnat komentoihin. Komennot voi kuitenkin esitellä ajonaikaisesti. Voit tehdä sen noutamalla kohteen org.eclipse.ui.commands.ICommandService
työympäristön komponentista, kutsumalla kohdetta getCommand(yourCommandID)
ja kutsumalla sitten
kohdetta Command.define(...)
.
Järjestelmässä on muutamia käsittelijätilojen oletustoteutuksia, jotka voivat olla hyödyllisiä tämän laajennuspisteen käyttäjille:
Copyright (c) 2000, 2005 IBM Corporation and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html