Tartalomtípusok

org.eclipse.core.runtime.contentTypes

3.0

A tartalomtípusok kiterjesztési pont lehetővé teszi, hogy a bedolgozók hozzájáruljanak a platform tartalomtípus katalógushoz. A hozzájárulásnak két formája létezik: a tartalomtípus és a fájlhozzárendelés.

<!ELEMENT extension (content-type* , file-association*)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT content-type (describer? , property*)>

<!ATTLIST content-type

id              CDATA #REQUIRED

base-type       CDATA #IMPLIED

name            CDATA #REQUIRED

file-extensions CDATA #IMPLIED

file-names      CDATA #IMPLIED

priority        (low|normal|high) "normal"

default-charset CDATA #IMPLIED

describer       CDATA #IMPLIED

alias-for       CDATA #IMPLIED>


<!ELEMENT describer (parameter*)>

<!ATTLIST describer

class  CDATA #REQUIRED

plugin CDATA #IMPLIED>

Ha a describer attribútum kerül felhasználásra a content-type elemben, akkor ez az elem figyelmen kívül marad.



<!ELEMENT file-association EMPTY>

<!ATTLIST file-association

content-type    CDATA #REQUIRED

file-names      CDATA #IMPLIED

file-extensions CDATA #IMPLIED>


<!ELEMENT parameter EMPTY>

<!ATTLIST parameter

name  CDATA #REQUIRED

value CDATA #REQUIRED>


<!ELEMENT property EMPTY>

<!ATTLIST property

name    CDATA #REQUIRED

default CDATA #IMPLIED>

Ezen tartalomtípussal kapcsolatos tulajdonságot deklarál, és választható módon egy alapértelmezett értéket is hozzárendel. A tulajdonságokkal kapcsolatos további információk az org.eclipse.core.runtime.content.IContentDescription felület leírásában találhatók.



Az alábbiakban az org.eclipse.core.runtime.content.XMLRootElementContentDescriber beépített leíró felhasználásával létrehozott XML-alapú tartalomtípus deklaráció látható:

   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<content-type id=

"ABC"

base-type=

"org.eclipse.core.runtime.xml"

file-extensions=

"a,b,c"

>

<describer class=

"org.eclipse.core.runtime.content.XMLRootElementContentDescriber"

>

<parameter name=

"element"

value=

"abc"

/>

</describer>

</content-type>

</extension>

Az alábbiakban egy adott fájlkiterjesztéssel rendelkező egyszerű szövegalapú tartalomtípusra látható példa:

   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<content-type id=

"MyText"

base-type=

"org.eclipse.core.runtime.text"

file-extensions=

"mytxt"

/>

</extension>

Amikor az új fájlneveket vagy -kiterjesztéseket egy meglévő tartalomtípushoz kell társítani (ellentétben egy új tartalomtípus megadásával), akkor egy bedolgozó egy fájltársítást vehet fel az alább látható módon. Ennek hatására a szöveges tartalomtípus meghatározása kiterjesztésre kerül az olyan fájlok felvételével, amelyek neve megfelel a "*.mytxt" mintának.

   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<file-association content-type=

"org.eclipse.core.runtime.text"

file-extensions=

"mytxt"

/>

</extension>

Alább egy példa látható egy olyan tartalomtípusra, amely tulajdonságokat határoz meg:
   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<content-type id=

"MyContentType"

file-extensions=

"dat"

>

<property name=

"file-format"

value=

"1"

/>

</content-type>

</extension>

A leíró elem class attribútumának értéke az org.eclipse.core.runtime.content.IContentDescriber vagy az org.eclipse.core.runtime.content.ITextContentDescriber megvalósítója. Az org.eclipse.core.runtime.content.IContentDescription objektumokat az org.eclipse.core.runtime.content API adja vissza.

Az org.eclipse.core.runtime bedolgozó a következő tartalomtípusokat biztosítja:

A platform más bedolgozói egyéb tartalomtípusokhoz járulnak hozzá.

Az org.eclipse.core.runtime bedolgozó is biztosít használatra kész tartalomleíró megvalósításokat: