<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>

<!--

   Copyright (c) 2009 Thales Corporate Services S.A.S.
   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:
       Thales Corporate Services S.A.S - initial API and implementation
-->

<plugin>

  <!-- ================================================================================= -->
  <!-- ProductionPlan Model                                                              -->
  <!-- ================================================================================= --> 
  
  <extension 
    point="org.eclipse.emf.edit.itemProviderAdapterFactories"
  >
    <factory
      uri="http://www.eclipse.org/egf/1.0.0/fprod"
      class="org.eclipse.egf.model.fprod.provider.FprodItemProviderAdapterFactory"
      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
         org.eclipse.emf.edit.provider.ITableItemLabelProvider
         org.eclipse.emf.edit.provider.ITableItemColorProvider
         org.eclipse.emf.edit.provider.ITableItemFontProvider
         org.eclipse.emf.edit.provider.IItemColorProvider
         org.eclipse.emf.edit.provider.IItemFontProvider"
      />
  </extension>
  
  <extension 
    point="org.eclipse.emf.edit.childCreationExtenders"
  >
    <extender
      uri="http://www.eclipse.org/egf/1.0.0/fcore"
      class="org.eclipse.egf.model.fprod.provider.FprodItemProviderAdapterFactory$FcoreChildCreationExtender"
    />
  </extension>
  
  <!-- ================================================================================= -->
  <!-- Fprod Extenders                                                                   -->
  <!-- ================================================================================= -->   
    
  <extension 
    point="org.eclipse.emf.edit.childCreationExtenders"
  >
    <extender
      uri="http://www.eclipse.org/egf/1.0.0/fprod"
      class="org.eclipse.egf.model.domain.provider.DomainItemProviderAdapterFactory$FcoreChildCreationExtender"
    />
  </extension>         
    
  <extension 
    point="org.eclipse.emf.edit.childCreationExtenders"
  >
    <extender
      uri="http://www.eclipse.org/egf/1.0.0/fprod"
      class="org.eclipse.egf.model.pattern.provider.PatternItemProviderAdapterFactory$FcoreChildCreationExtender"
    />
  </extension>         
    
</plugin>
