Tipi di contenuto

org.eclipse.core.runtime.contentTypes

3.0

Il punto di estensione dei tipi di contenuto consente ai plugin di contribuire al catalogo dei tipi di contenuto della piattaforma. Non esistono altre forme di contributi: tipi di contenuto e associazioni di file.

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

Se l'attributo describer viene utilizzato nell'elemento content-type, questo elemento viene ignorato.



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

Dichiara una proprietà correlata a questo tipo di contenuto, facoltativamente assegnando un valore predefinito. Per ulteriori dettagli sulle proprietà, consultare org.eclipse.core.runtime.content.IContentDescription.



Di seguito è riportato un esempio di una dichiarazione di tipo di contenuto XML, utilizzando org.eclipse.core.runtime.content.XMLRootElementContentDescriber, un descrittore incorporato:

   

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

Di seguito è riportato un esempio di un tipo di contenuto semplice basato su un testo che presenta una specifica estensione file:

   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<content-type id=

"MyText"

base-type=

"org.eclipse.core.runtime.text"

file-extensions=

"mytxt"

/>

</extension>

Quando è necessario associare nuovi nomi file/estensioni ad un tipo di contenuto esistente (in alternativa alla definizione di un nuovo tipo di contenuto), un plugin può contribuire all'associazione file nel modo indicato di seguito. Questo ha l'effetto di migliorare la definizione del tipo di contenuto testo per includere file con nomi che rispettano il modello "*.mytxt".

   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<file-association content-type=

"org.eclipse.core.runtime.text"

file-extensions=

"mytxt"

/>

</extension>

Di seguito è riportato un esempio di tipo di contenuto che definisce le proprietà:
   

<extension point=

"org.eclipse.core.runtime.contentTypes"

>

<content-type id=

"MyContentType"

file-extensions=

"dat"

>

<property name=

"file-format"

value=

"1"

/>

</content-type>

</extension>

Il valore dell'attributo class nell'elemento descrittore deve rappresentare un implementatore di org.eclipse.core.runtime.content.IContentDescriber o org.eclipse.core.runtime.content.ITextContentDescriber. Gli oggetti org.eclipse.core.runtime.content.IContentDescription restituiti dall'API org.eclipse.core.runtime.content.

Il plugin org.eclipse.core.runtime fornisce i seguenti tipi di contenuto:

Altri plugin della piattaforma forniscono altri tipi di contenuto.

Inoltre, il plugin org.eclipse.core.runtime fornisce implementazioni pronte da utilizzare dei descrittori del contenuto: