Inhoudtypen

org.eclipse.core.runtime.contentTypes

3.0

Met het extensiepunt voor inhoudtypen kunnen plugins bijdragen leveren aan de platformcatalogus voor inhoudtypen. Er zijn twee soorten bijdragen: inhoudtypen en bestandskoppelingen.

<!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>

Als het kenmerk describer is gebruikt in het element content-type, wordt dit element genegeerd.



<!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>

Hiermee declareert u een eigenschap die gerelateerd is aan dit inhoudtype, waarbij desgewenst een standaardwaarde wordt toegewezen. Zie org.eclipse.core.runtime.content.IContentDescription voor meer informatie over eigenschappen.



Hieronder ziet u een voorbeeld van de declaratie van een op XML gebaseerd inhoudtype met de ingebouwde describer org.eclipse.core.runtime.content.XMLRootElementContentDescriber:

   

<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>

Hieronder ziet u een voorbeeld van een eenvoudig op tekst gebaseerd inhoudtype met een specifieke bestandsextensie:

   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<content-type id=

"MyText"

base-type=

"org.eclipse.core.runtime.text"

file-extensions=

"mytxt"

/>

</extension>

Wanneer het nodig is om nieuwe bestandsnamen/bestandsextensies te koppelen aan een bestaand inhoudtype (in plaats van een nieuw inhoudtype te definiëren), kan de plugin een bestandskoppeling aanleveren zoals hieronder wordt beschreven. Hierdoor wordt de definitie van het tekstinhoudtype uitgebreid met bestanden die voldoen aan het naampatroon "*.mytxt".

   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<file-association content-type=

"org.eclipse.core.runtime.text"

file-extensions=

"mytxt"

/>

</extension>

Dit is een voorbeeld van een inhoudtype met gedefinieerde eigenschappen:
   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<content-type id=

"MyContentType"

file-extensions=

"dat"

>

<property name=

"file-format"

value=

"1"

/>

</content-type>

</extension>

De waarde van het kenmerk class in het element describer moet een implementor van org.eclipse.core.runtime.content.IContentDescriber of org.eclipse.core.runtime.content.ITextContentDescriber aanduiden. org.eclipse.core.runtime.content.IContentDescription-objecten geretourneerd door de API org.eclipse.core.runtime.content

De plugin org.eclipse.core.runtime bevat de volgende inhoudtypen:

Andere plugins in het platform leveren andere inhoudtypen aan.

Daarnaast bevat de plugin org.eclipse.core.runtime de volgende kant-en-klare implementaties van contentdescribers: