<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>

<!--
    Copyright (c) 2008, 2009 Obeo.
    All rights reserved. This program and the accompanying materials
    are made available under the terms of the Eclipse Public License v1.0
    which accompanies this distribution, and is available at
    http://www.eclipse.org/legal/epl-v10.html
   
    Contributors:
        Obeo - initial API and implementation
 -->

<plugin>

   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
      <factory
            uri="http://www.eclipse.org/emf/eef/views/1.0.0"
            class="org.eclipse.emf.eef.views.provider.ViewsItemProviderAdapterFactory"
            supportedTypes=
              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
               org.eclipse.emf.edit.provider.ITreeItemContentProvider
               org.eclipse.emf.edit.provider.IItemLabelProvider
               org.eclipse.emf.edit.provider.IItemPropertySource"/>
   </extension>

   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
      <factory
            uri="http://www.eclipse.org/emf/eef/views/toolkits/1.0.0"
            class="org.eclipse.emf.eef.toolkits.provider.ToolkitsItemProviderAdapterFactory"
            supportedTypes=
              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
               org.eclipse.emf.edit.provider.ITreeItemContentProvider
               org.eclipse.emf.edit.provider.IItemLabelProvider
               org.eclipse.emf.edit.provider.IItemPropertySource"/>
   </extension>
   
   <extension point="org.eclipse.emf.ecore.extension_parser">
      <parser
          class="org.eclipse.emf.eef.views.resources.ViewsResourceFactory"
          type="views"/>
   </extension>
    <extension
         point="org.eclipse.emf.validation.constraintProviders">
      <category
            name="EEF Constraints"
            id="org.eclipse.emf.eef.validation"/>
      <constraintProvider cache="true">
         <package namespaceUri="http://www.eclipse.org/emf/eef/views/1.0.0"/>
         <constraints categories="org.eclipse.emf.eef.validation">
            <constraint
                  lang="Java"
                  class="org.eclipse.emf.eef.views.validation.NonReferenceViewsConstraint"
                  severity="ERROR"
                  mode="Batch"
                  name="Non-Referenced Views"
                  id="org.eclipse.emf.eef.views.validation.nonrefviews"
                  statusCode="1">
               <description>
                  All items in a views model must be referenced by a controller ...
               </description>
               <message>
                  The ElementEditor {0} has been found without controller.
               </message>
               <target class="ElementEditor"/>
            </constraint>
         </constraints>
      </constraintProvider>
      <constraintProvider cache="true">
         <package namespaceUri="http://www.eclipse.org/emf/eef/views/1.0.0"/>
         <constraints categories="org.eclipse.emf.eef.validation">
            <constraint
                  lang="Java"
                  class="org.eclipse.emf.eef.views.validation.ContainerWithoutRepresensationConstraint"
                  severity="WARNING"
                  mode="Batch"
                  name="Container without representation"
                  id="org.eclipse.emf.eef.views.validation.containerwithoutrepresentation"
                  statusCode="1">
               <description>
                  Container should have a representation.
               </description>
               <message>
                  The container {0} ({1}) hasn't representation. This could stop the EEF generation.
               </message>
               <target class="Container"/>
            </constraint>
         </constraints>
      </constraintProvider>
   </extension>

 <!-- EEF extensions -->
   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
      <factory
            uri="http://www.eclipse.org/emf/eef/views/toolkits/1.0.0"
            class="org.eclipse.emf.eef.toolkits.providers.ToolkitsEEFAdapterFactory"
            supportedTypes="org.eclipse.emf.eef.runtime.providers.PropertiesEditingProvider"/>
   </extension>
   <extension
         point="org.eclipse.emf.eef.runtime.PropertiesEditionPartProvider">
      <PropertiesEditionPartProvider
            providerClass="org.eclipse.emf.eef.views.providers.ViewsPropertiesEditionPartProvider">
      </PropertiesEditionPartProvider>
   </extension>
   <extension
         point="org.eclipse.emf.eef.runtime.PropertiesEditionPartProvider">
      <PropertiesEditionPartProvider
            providerClass="org.eclipse.emf.eef.toolkits.providers.ToolkitsPropertiesEditionPartProvider">
      </PropertiesEditionPartProvider>
   </extension>

  <!-- Tabbed properties views extension -->
   <extension
         point="org.eclipse.ui.views.properties.tabbed.propertyContributor">
      <propertyContributor
            contributorId="org.eclipse.emf.eef.properties"
            labelProvider="org.eclipse.emf.eef.runtime.ui.utils.EEFLabelProvider">
         <propertyCategory
               category="default">
         </propertyCategory>
         <propertyCategory
               category="extended">
         </propertyCategory>
         <propertyCategory
               category="advanced">
         </propertyCategory>
      </propertyContributor>
   </extension>
   <extension
         point="org.eclipse.ui.views.properties.tabbed.propertyTabs">
      <propertyTabs
            contributorId="org.eclipse.emf.eef.properties">
         <propertyTab
               id="Documentation"
               label="Documentation"
               category="default">
         </propertyTab>

         <propertyTab
               id="Base"
               label="Base"
               category="default">
         </propertyTab>

      </propertyTabs>
   </extension>
   <extension
         point="org.eclipse.ui.views.properties.tabbed.propertySections">
      <propertySections
            contributorId="org.eclipse.emf.eef.properties">
         <propertySection
               class="org.eclipse.emf.eef.toolkits.parts.forms.ToolkitPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.toolkits.providers.ToolkitPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.toolkits.section.Toolkit"
               tab="Base">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.toolkits.parts.forms.WidgetPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.toolkits.providers.WidgetPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.toolkits.section.Widget"
               tab="Base">
         </propertySection>
      </propertySections>
   </extension>
  <!-- EEF extensions -->
   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
      <factory
            uri="http://www.eclipse.org/emf/eef/views/1.0.0"
            class="org.eclipse.emf.eef.views.providers.ViewsEEFAdapterFactory"
            supportedTypes="org.eclipse.emf.eef.runtime.providers.PropertiesEditingProvider"/>
   </extension>
   <extension
         point="org.eclipse.emf.eef.runtime.PropertiesEditionPartProvider">
      <PropertiesEditionPartProvider
            providerClass="org.eclipse.emf.eef.views.providers.ViewsPropertiesEditionPartProvider">
      </PropertiesEditionPartProvider>
   </extension>
   <extension
         point="org.eclipse.emf.eef.runtime.PropertiesEditionPartProvider">
      <PropertiesEditionPartProvider
            providerClass="org.eclipse.emf.eef.toolkits.providers.ToolkitsPropertiesEditionPartProvider">
      </PropertiesEditionPartProvider>
   </extension>

  <!-- Tabbed properties views extension -->

   <extension
         point="org.eclipse.ui.views.properties.tabbed.propertySections">
      <propertySections
            contributorId="org.eclipse.emf.eef.properties">
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.ViewsRepositoryPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.ViewsRepositoryPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.ViewsRepository"
               tab="Base">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.DocumentationPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.ViewsRepositoryPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.ViewsRepository"
               tab="Documentation">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.ViewPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.ViewPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.View"
               tab="Base">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.DocumentationPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.ViewPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.View"
               tab="Documentation">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.ElementEditorPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.ElementEditorPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.ElementEditor"
               tab="Base">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.DocumentationPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.ElementEditorPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.ElementEditor"
               tab="Documentation">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.CategoryPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.CategoryPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.Category"
               tab="Base">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.DocumentationPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.CategoryPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.Category"
               tab="Documentation">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.ContainerPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.ContainerPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.Container"
               tab="Base">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.DocumentationPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.ContainerPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.Container"
               tab="Documentation">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.CustomElementEditorPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.CustomElementEditorPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.CustomElementEditor"
               tab="Base">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.DocumentationPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.CustomElementEditorPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.CustomElementEditor"
               tab="Documentation">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.CustomViewPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.CustomViewPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.CustomView"
               tab="Base">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.DocumentationPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.CustomViewPropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.CustomView"
               tab="Documentation">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.ViewReferencePropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.ViewReferencePropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.ViewReference"
               tab="Base">
         </propertySection>
         <propertySection
               class="org.eclipse.emf.eef.views.parts.forms.DocumentationPropertiesEditionPartForm"
			   filter="org.eclipse.emf.eef.views.providers.ViewReferencePropertiesEditionProvider$EditionFilter"
               id="org.eclipse.emf.eef.views.section.ViewReference"
               tab="Documentation">
         </propertySection>
      </propertySections>
   </extension>
 </plugin>

