Indholdstyper

org.eclipse.core.runtime.contentTypes

3.0

Udvidelsespunktet indholdstyper gør det muligt for plugins at bidrage til platformsindholdstypekataloget. Det er to former for bidrag: content types og file associations.

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

<!ATTLIST-udvidelse

point CDATA #REQUIRED

id    CDATA #IMPLIED

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

Hvis describer-attributten bruges i content-type-elementet, ignoreres dette 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

navn  CDATA #REQUIRED

value CDATA #REQUIRED>


<!ELEMENT property EMPTY>

<!ATTLIST property

name    CDATA #REQUIRED

default CDATA #IMPLIED>

Erklærer en egenskab, som er relateret til denne indholdstype, eller en tildeling af en standardværdi (valgfri). Der er flere oplysninger om egenskaber i org.eclipse.core.runtime.content.IContentDescription.



Følgende er et eksempel på en XML-baseret indholdstypeerklæring, der benytter org.eclipse.core.runtime.content.XMLRootElementContentDescriber, som er en indbygget beskrivelse:

   

<udvidelsespunkt=

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

Her er et eksempel på en enkel, tekstbaseret indholdstype, som har en bestemt filtype:

   

<udvidelsespunkt=

"org.eclipse.core.runtime.contentTypes"

>

<content-type id=

"MyText"

base-type=

"org.eclipse.core.runtime.text"

file-extensions=

"mytxt"

/>

</extension>

Hvis der er brug for at tilknytte nye filnavne/udvidelser til en eksisterende indholdstype (i modsætning til at definere en ny indholdstype), kan en plugin bidrage med en filtilknytning, som vist nedenfor. Det har den effekt, at det udvider definitionen af tekstindholdstypen, så den inkluderer filer med navne, der følger mønstret "*.mytxt".

   

<udvidelsespunkt=

"org.eclipse.core.runtime.contentTypes"

>

<file-association content-type=

"org.eclipse.core.runtime.text"

file-extensions=

"mytxt"

/>

</extension>

Her er et eksempel på en indholdstype, der definerer egenskaber:
   

<udvidelsespunkt=

"org.eclipse.core.runtime.contentTypes"

>

<content-type id=

"MyContentType"

file-extensions=

"dat"

>

<property name=

"file-format"

value=

"1"

/>

</content-type>

</extension>

Klasseattributtens værdi i beskrivelseselementet skal repræsentere en implementering af org.eclipse.core.runtime.content.IContentDescriber eller org.eclipse.core.runtime.content.ITextContentDescriber. org.eclipse.core.runtime.content.IContentDescription-objekter, som er returneret af API'et org.eclipse.core.runtime.content.

Plugin'en org.eclipse.core.runtime leverer følgende indholdstyper:

Andre plugins på platformen bidrager med andre indholdstyper.

org.eclipse.core.runtime-plugin'en leverer også implementeringer af indholdsbeskrivelser, som er parat til brug: