Innehållstyper

org.eclipse.core.runtime.contentTypes

3.0

Utökningspunkten för innehållstyper gör det möjligt för insticksprogram att bidra till plattformens innehållstypkatalog. Det finns två typer av bidrag: innehållstyper och filassociationer.

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

Om beskrivningsattributet används i content-type-elementet ignoreras detta element.



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

Deklarerar en egenskap som är relaterad till denna innehållstyp. Ett standardvärde kan tilldelas (valfritt). Se org.eclipse.core.runtime.content.IContentDescription för mer information om egenskaper.



Följande är ett exempel på en XML-baserad innehållstypsdeklaration som använder org.eclipse.core.runtime.content.XMLRootElementContentDescriber, en inbyggd beskrivare:

   

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

Här är ett exempel på en enkel textbaserad innehållstyp med ett specifikt filtillägg:

   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<content-type id=

"MyText"

base-type=

"org.eclipse.core.runtime.text"

file-extensions=

"mytxt"

/>

</extension>

När det inte finns något behov av att associera nya filnamn/filtillägg till en befintlig innehållstyp (till skillnad från att definiera en ny innehållstyp), kan ett insticksprogram bidra med en filassociation (se nedan). Då utökas definitionen av textinnehållstypen så att filer med namn som följer mönstret "*.mytxt" tas med.

   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<file-association content-type=

"org.eclipse.core.runtime.text"

file-extensions=

"mytxt"

/>

</extension>

Här visas ett exempel på en innehållstyp som definierar egenskaper:
   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<content-type id=

"MyContentType"

file-extensions=

"dat"

>

<property name=

"file-format"

value=

"1"

/>

</content-type>

</extension>

Värdet på klassattributet i beskrivningselementet måste motsvara en implementeringsfunktion för org.eclipse.core.runtime.content.IContentDescriber eller org.eclipse.core.runtime.content.ITextContentDescriber. org.eclipse.core.runtime.content.IContentDescription-objekt som returneras av org.eclipse.core.runtime.content-API:et

Insticksprogrammet org.eclipse.core.runtime tillhandahåller följande innehållstyper:

Andra insticksprogram på plattformen bidrar med andra innehållstyper.

Insticksprogrammet org.eclipse.core.runtime tillhandahåller också implementationer med innehållsbeskrivningar som är klara att använda.