Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick tessier2014-02-10 12:43:29 +0000
committerPatrick tessier2014-02-10 12:43:29 +0000
commit74550693a485c6ff27748a6c5a9bfdae21b8bd5b (patch)
treec47f42dd4f68434598c3bf6b29c7ce3a6fdb5314 /plugins/facet
parentbc56e957da4deded94425181f3288b98407c5764 (diff)
downloadorg.eclipse.papyrus-74550693a485c6ff27748a6c5a9bfdae21b8bd5b.tar.gz
org.eclipse.papyrus-74550693a485c6ff27748a6c5a9bfdae21b8bd5b.tar.xz
org.eclipse.papyrus-74550693a485c6ff27748a6c5a9bfdae21b8bd5b.zip
386118: [EMF Facet] Papyrus should progressively support EMF Facet 0.2
https://bugs.eclipse.org/bugs/show_bug.cgi?id=386118 import EMF-FACET
Diffstat (limited to 'plugins/facet')
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/.classpath7
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/.project28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/MANIFEST.MF99
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/eclipse.inf2
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.properties5
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.xml99
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/about.html28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/build.properties9
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/CustomizationMetaclass.pngbin0 -> 3834 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/CustomizedEObject.pngbin0 -> 16744 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/EClassAndFacetCustomizationMetaclasses.pngbin0 -> 9276 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/ETypedElementSwitchQuery.pngbin0 -> 11850 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/LibraryModelInModelBrowser.pngbin0 -> 3916 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/LoadCustomizationsDialog.pngbin0 -> 30019 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/bottomLeftOverlay.pngbin0 -> 873 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/bottomMiddleOverlay.pngbin0 -> 885 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/bottomRightOverlay.pngbin0 -> 876 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/customizationWithOverride.pngbin0 -> 24595 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/customizingFacetWithOverride.pngbin0 -> 36048 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/topLeftOverlay.pngbin0 -> 871 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/topMiddleOverlay.pngbin0 -> 896 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/topRightOverlay.pngbin0 -> 881 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/plugin_dev-toc.xml4
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/plugin_dev.html37
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/plugin_dev.mediawiki27
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/user-toc.xml28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/user.html445
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/user.mediawiki224
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/plugin.xml19
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/toc-dev.xml15
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.doc/toc-user.xml15
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/.project22
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/META-INF/MANIFEST.MF5
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/build.properties3
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/plugin.xml8
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomCreation1.pngbin0 -> 33215 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomEdition.pngbin0 -> 57098 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/EditorWithEmptyFile.pngbin0 -> 18586 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FacetCustomCreation1.pngbin0 -> 43995 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationCreation1.pngbin0 -> 62245 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationSpecifyQuery.pngbin0 -> 86902 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FineTuneEClassCustomization.pngbin0 -> 38903 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/RightPaneldescription.pngbin0 -> 31283 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation1.pngbin0 -> 41678 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation2.pngbin0 -> 29755 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation3.pngbin0 -> 20914 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/addParameter.pngbin0 -> 59824 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/attributes.gifbin0 -> 124 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/bottomLeftOverlay.pngbin0 -> 181 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/bottomMiddleOverlay.pngbin0 -> 188 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/bottomRightOverlay.pngbin0 -> 185 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/customizationLabel.pngbin0 -> 215 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/editor-toc.xml14
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/editor.html1
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/editor.textile174
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/facetOperationWithPropertiesView.pngbin0 -> 40264 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontBold.pngbin0 -> 249 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontItalic.bmpbin0 -> 822 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontName.pngbin0 -> 256 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontSize.pngbin0 -> 275 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontStrukethrough.bmpbin0 -> 822 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontUnderline.bmpbin0 -> 822 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/imageCustomization.pngbin0 -> 215 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/middleLeftOverlay.pngbin0 -> 188 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/middleRightOverlay.pngbin0 -> 191 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/rgb.pngbin0 -> 307 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/topLeftOverlay.pngbin0 -> 170 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/topMiddleOverlay.pngbin0 -> 159 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/topRightOverlay.pngbin0 -> 196 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/.classpath7
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/.project28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/MANIFEST.MF214
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/eclipse.inf2
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.properties5
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.xml14
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/about.html28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/build.properties8
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/Facet.gifbin0 -> 805 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/error.gifbin0 -> 353 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/addUiCustom.gifbin0 -> 612 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg.gifbin0 -> 68 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg_unidir.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/attribute_facet.gifbin0 -> 438 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/attributes.gifbin0 -> 124 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomLeftOverlay.pngbin0 -> 181 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomMiddleOverlay.pngbin0 -> 188 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomRightOverlay.pngbin0 -> 185 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/collapseall.gifbin0 -> 157 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/common_columns.gifbin0 -> 101 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/container.gifbin0 -> 88 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/customizationLabel.pngbin0 -> 215 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/decrease_font_size.gifbin0 -> 102 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/derivation_tree.gifbin0 -> 82 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived.gifbin0 -> 97 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived_instances.gifbin0 -> 76 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/eClass.gifbin0 -> 228 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/element_id.gifbin0 -> 76 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_attributes.gifbin0 -> 122 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_links.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/feature.gifbin0 -> 294 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontBold.pngbin0 -> 249 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontItalic.bmpbin0 -> 822 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontName.pngbin0 -> 256 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontSize.pngbin0 -> 275 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontStrukethrough.bmpbin0 -> 822 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontUnderline.bmpbin0 -> 822 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/full_name.gifbin0 -> 86 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/imageCustomization.pngbin0 -> 215 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/increase_font_size.gifbin0 -> 130 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/inv_aggreg.gifbin0 -> 70 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link.gifbin0 -> 67 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_type.gifbin0 -> 92 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir_facet.gifbin0 -> 375 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleLeftOverlay.pngbin0 -> 188 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleRightOverlay.pngbin0 -> 191 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/multiplicity.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/non-zero.gifbin0 -> 187 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/operation.gifbin0 -> 161 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/opposite_links.gifbin0 -> 68 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/ordering.gifbin0 -> 102 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/package.gifbin0 -> 207 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/predicate.gifbin0 -> 645 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/range.gifbin0 -> 89 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/restore_font_size.gifbin0 -> 130 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/rgb.pngbin0 -> 307 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort.gifbin0 -> 153 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links.gifbin0 -> 189 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links_by_type.gifbin0 -> 136 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_num.gifbin0 -> 138 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/topLeftOverlay.pngbin0 -> 170 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/topMiddleOverlay.pngbin0 -> 159 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/topRightOverlay.pngbin0 -> 196 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/uri.gifbin0 -> 76 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/view_menu.gifbin0 -> 90 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/zero.gifbin0 -> 326 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/obj16/CustomModelFile.gifbin0 -> 346 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/wizban/NewCustom.gifbin0 -> 2462 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/logoMoDiscoMini.gifbin0 -> 1078 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/query.pngbin0 -> 709 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/shortcut.pngbin0 -> 198 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/messages.properties97
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/plugin.properties150
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/plugin.xml46
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Activator.java53
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ColorProvider.java66
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomActionBarContributor.java434
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditor.java2019
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditorPlugin.java105
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomModelWizard.java639
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomViewer.java445
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/EMFUtil.java363
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/FormStyleSashForm.java143
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ImageProvider.java770
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Messages.java122
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/messages.properties97
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/.classpath7
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/.project28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/META-INF/MANIFEST.MF90
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/META-INF/eclipse.inf2
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.sdk.core/pom.properties5
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.sdk.core/pom.xml15
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/OSGI-INF/l10n/bundle.properties18
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/about.html28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/build.properties6
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/plugin.xml49
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/src/org/eclipse/emf/facet/custom/sdk/core/ICustomizationActions.java44
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/src/org/eclipse/emf/facet/custom/sdk/core/ICustomizationCommandFactory.java61
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/src/org/eclipse/emf/facet/custom/sdk/core/ICustomizationCommandFactoryFactory.java39
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/src/org/eclipse/emf/facet/custom/sdk/core/internal/Activator.java54
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/src/org/eclipse/emf/facet/custom/sdk/core/internal/CustomizationActionsImpl.java69
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/src/org/eclipse/emf/facet/custom/sdk/core/internal/CustomizationCommandFactory.java93
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/src/org/eclipse/emf/facet/custom/sdk/core/internal/CustomizationCommandFactoryFactory.java26
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/src/org/eclipse/emf/facet/custom/sdk/core/internal/validation/AvoidEClassOverlayConstraint.java57
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/src/org/eclipse/emf/facet/custom/sdk/core/internal/validation/CustomizationValidationBuilder.java116
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.core/src/org/eclipse/emf/facet/custom/sdk/core/internal/validation/ValidationDelegateClientSelector.java23
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/.classpath7
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/.project28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/META-INF/MANIFEST.MF380
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/META-INF/eclipse.inf2
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.sdk.ui/pom.properties5
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.sdk.ui/pom.xml15
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/OSGI-INF/l10n/bundle.properties37
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/about.html28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/build.properties8
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/icons/FacetAttribute.gifbin0 -> 306 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/icons/FacetOperation.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/icons/FacetReference.gifbin0 -> 314 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/icons/FacetSet.gifbin0 -> 605 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/icons/ParameterValue.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/icons/facet.gifbin0 -> 805 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/icons/flatView.gifbin0 -> 97 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/icons/full/obj16/CustomModelFile.gifbin0 -> 346 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/icons/full/wizban/NewCustom.gifbin0 -> 2462 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/icons/querySet.gifbin0 -> 423 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/icons/treeView.gifbin0 -> 101 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/org.eclipse.emf.facet.custom.sdk.ui.modelcelleditors8
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/plugin.xml223
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/dialog/ICustomizationDialogFactory.java62
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/Activator.java51
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/Messages.java72
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/Startup.java22
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/dialog/CustomizationDialogFactory.java83
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/messages.properties57
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGetOrCreateFilteredElementCommmandWidget.java142
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractCustomizationMainDialog.java59
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractGetCustomizationDialog.java33
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractGetOrCreateCustomizationDialog.java59
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/command/AddCaseQueryDialog.java78
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/command/AddCustomizationPropertyDialog.java73
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/command/CreateEClassCustomizationDialog.java95
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/command/CreateFacetCustomizationDialog.java71
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/command/QueryContext.java73
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/getorcreate/GetOrCreateCustomizationDialog.java80
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetCustomizedFacetDialog.java71
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetExtendedFacetDialog.java72
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetFacetOperationDialog.java79
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedAddCaseQueryDialog.java36
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedAddCustomizationPropertyDialog.java36
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedCreateEClassCustomizationDialog.java36
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedCreateFacetCustomizationDialog.java36
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/handler/AddCaseQueryHandler.java42
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/handler/AddCustomizationPropertyInEClassHandler.java42
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/handler/AddCustomizationPropertyInFacetHandler.java42
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/handler/CreateEClassCustomizationHandler.java41
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/handler/CreateFacetCustomizationHandler.java40
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/handler/Utils.java78
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/command/AddCaseQueryWidget.java94
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/command/AddCustomizationPropertyWidget.java119
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/command/CreateEClassCustomizationWidget.java180
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/command/CreateFacetCustomizationWidget.java123
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/command/GetOrCreateCustomizationWidget.java101
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/AbstractGetFacetWidget.java61
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetCustomizedFacetWidget.java62
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetExtendedFacetWidget.java62
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredCustomizedFacetWidget.java121
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredExtendedFacetWidget.java120
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredOperationFacetWidget.java97
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetOperationFacetWidget.java82
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetOrCreateCustomizationWidget.java85
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/metaclass/GetExtendedMetaclassWidget.java85
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetCaseQueryNameWidget.java68
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetCaseQueryTypeWidget.java59
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetEClassCustomizationNameWidget.java59
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/wizard/CreateCustimizationWizardImpl.java268
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/wizard/page/CreateCustomizationWizardPage.java117
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/util/wizard/page/CustomPropertyWizardPage.java112
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/widgets/celleditors/ImageCellEditor.java51
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/widgets/celleditors/composite/ImageComposite.java132
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/widgets/celleditors/composite/ImageCompositeFactory.java28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/wizard/page/ICreateCustomizationWizardPage.java31
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.custom.sdk.ui/src/org/eclipse/emf/facet/custom/sdk/ui/internal/wizard/page/ICustomizationPropertyWizardPage.java50
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/.classpath7
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/.project28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/META-INF/MANIFEST.MF896
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/META-INF/eclipse.inf2
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.doc/pom.properties5
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.doc/pom.xml99
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/about.html28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/build.properties13
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/img/EMFFacet_NatTable_CustomizationExample.pngbin0 -> 24229 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/img/EMFFacet_NatTable_QueryColumn.pngbin0 -> 18479 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/index.html16
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/allclasses-frame.html123
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/allclasses-noframe.html123
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/constant-values.html312
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/deprecated-list.html146
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/help-doc.html223
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-1.html161
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-10.html221
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-11.html154
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-12.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-13.html260
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-14.html145
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-15.html163
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-2.html175
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-3.html244
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-4.html154
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-5.html199
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-6.html419
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-7.html206
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-8.html182
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index-files/index-9.html145
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/index.html39
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html443
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html336
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html344
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html496
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html1081
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html325
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Book.html209
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Library.html249
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryFactory.html196
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryPackage.Literals.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryPackage.html196
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Writer.html233
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-frame.html42
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html184
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-use.html225
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html417
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html395
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/class-use/LibraryAdapterFactory.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/class-use/LibrarySwitch.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-frame.html34
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html161
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-tree.html155
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html495
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/class-use/IFacetDialogFactory.html180
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-use.html170
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html358
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html294
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryContext.html237
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryDialogFactoryStrategy.html205
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html231
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/class-use/IQueryDialogFactory.html210
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-use.html189
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-frame.html34
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html161
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-use.html195
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html325
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html272
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html393
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html469
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html287
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IDerivedTypedElementWidget.html180
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IENamedElementWidget.html233
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IEStructuralFeatureWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IETypedElementWidget.html188
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IFacetWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html213
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/class-use/IGetOrCreateFacetSetWidget.html180
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-use.html170
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html168
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/class-use/IGetExtendedMetaclassWidget.html209
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-use.html189
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html246
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/class-use/ICreateQueryWidget.html180
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-use.html170
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html360
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html168
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/class-use/ICreateFacetInFacetSetWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/class-use/IGetOrCreateFilteredFacetSetWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-frame.html34
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html161
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-tree.html153
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-frame.html40
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html173
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-tree.html157
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-use.html201
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html249
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/class-use/IWizardFactory.html180
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-use.html170
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html248
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html271
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/class-use/ICreateFacetSetWizardPage.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/class-use/IFacetSetPropertyWizardPage.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-frame.html34
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html161
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html257
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html257
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html257
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html257
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html257
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html257
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddAttributeInFacetHandler.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddOperationInFacetHandler.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddParameterInOperationHandler.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddReferenceInFacetHandler.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/CreateFacetInFacetSetHandler.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/CreateFacetSetInFacetSetHandler.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-frame.html42
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html177
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-tree.html165
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html907
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html389
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html225
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html282
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html313
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html422
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/AbstractQueryDialogFactory.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/GetQueryDialog.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/IQueryCreationResult.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/IQueryWidgetCompositeFactoryFactory.html196
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/QueryWidgetCompositeFactoryImpl.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/SelectQueryTypeWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-frame.html51
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html190
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-tree.html164
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-use.html171
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html441
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/class-use/OclQueryUtil.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-tree.html153
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html352
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html292
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html278
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html606
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQuery.html209
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryFactory.html196
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryPackage.Literals.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryPackage.html196
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-frame.html38
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html176
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-use.html201
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html389
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html367
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/class-use/OclQueryAdapterFactory.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/class-use/OclQuerySwitch.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-frame.html34
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html161
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-tree.html155
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html221
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/class-use/IOclDialogFactory.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tree.html153
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html206
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/class-use/IOclQueryWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html208
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/class-use/IOCLExpressionWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/overview-frame.html80
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/overview-summary.html232
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/overview-tree.html189
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/package-list20
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/resources/inherit.gifbin0 -> 57 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/javadoc/stylesheet.css29
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/maintoc.xml65
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/API_Policy-toc.xml11
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/API_Policy.html76
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/API_Policy.mediawiki77
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/capabilities-toc.xml5
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/capabilities.html58
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/capabilities.mediawiki44
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/checking_BREE-toc.xml2
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/checking_BREE.html37
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/checking_BREE.mediawiki19
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/new_and_noteworthy-toc.xml10
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/new_and_noteworthy.html58
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/new_and_noteworthy.mediawiki45
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/ramp_down-toc.xml2
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/ramp_down.html24
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/ramp_down.mediawiki11
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/retention_policy-toc.xml9
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/retention_policy.html34
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/retention_policy.mediawiki32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/running_tests-toc.xml2
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/running_tests.html34
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/mediawiki/running_tests.mediawiki13
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/plugin.xml25
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/src/org/eclipse/emf/facet/doc/tasks/GenerateApiJavadocTask.java140
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/toc-full.xml58
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.doc/toc.html109
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/.classpath7
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/.project28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/META-INF/MANIFEST.MF1305
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/META-INF/eclipse.inf2
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.efacet.sdk.ui/pom.properties5
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.efacet.sdk.ui/pom.xml14
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/OSGI-INF/l10n/bundle.properties32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/about.html28
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/build.properties8
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/icons/FacetAttribute.gifbin0 -> 306 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/icons/FacetOperation.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/icons/FacetReference.gifbin0 -> 314 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/icons/FacetSet.gifbin0 -> 605 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/icons/ParameterValue.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/icons/facet.gifbin0 -> 805 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/icons/flatView.gifbin0 -> 97 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/icons/querySet.gifbin0 -> 423 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/icons/treeView.gifbin0 -> 101 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/plugin.xml218
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/schema/queryFactoryDialogRegistration.exsd119
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.java129
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/Activator.java51
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/Messages.java224
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/Startup.java22
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/WorkbenchUtils.java71
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/AbstractComandMainDialog.java68
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/AbstractCommandDialog.java41
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/FacetDialogFactoryImpl.java179
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/SynchronizedFacetDialogFactory.java184
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/composite/AbstractComandExecDialog.java49
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateFacetDialog.java108
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateFacetSetDialog.java103
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateOperationDialog.java114
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetSubTypingTypeDialog.java88
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractDerivedTypedElementDialog.java44
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractENamedElementDialog.java39
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractEStructuralFeatureDialog.java77
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractETypedElementDialog.java78
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddAttributeInFacetDialog.java66
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddOperationInFacetDialog.java74
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddParameterInOperationDialog.java70
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddReferenceInFacetDialog.java69
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/CreateFacetInFacetSetDialog.java83
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/CreateFacetSetInFacetSetDialog.java78
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetAttributeDialog.java73
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetDialog.java91
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetOperationDialog.java75
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetOperationParameterDialog.java74
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetReferenceDialog.java74
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetSetDialog.java70
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exception/SdkUiRuntimeException.java34
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.java41
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.java38
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.java27
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.java49
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.java48
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.java37
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.java56
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.java32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.java35
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.java21
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.java31
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.java62
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.java26
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.java36
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.java40
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.java50
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.java33
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.java32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.java32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.java32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.java32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.java33
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetAttributeHandler.java32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetHandler.java32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetOperationHandler.java32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetOperationParameterHandler.java33
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetReferenceHandler.java32
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetSetHandler.java45
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/messages.properties177
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.java253
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.java164
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.java21
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.java53
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.java91
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.java290
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedCreateQueryWidget.java114
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedDerivedTypedElementWidget.java276
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedENamedElementWidget.java123
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedEStructuralFeatureWidget.java348
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedETypedElementWidget.java231
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedFacetWidget.java161
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetExtendedMetaclassWidget.java98
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredElementCommmandWidget.java143
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredFacetSetWidget.java126
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateFacetSetWidget.java100
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateFacetWidget.java95
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateOperationWidget.java94
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetElementTypeWidget.java79
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetExtendedMetaclassWidget.java84
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetSubTypingTypeWidget.java88
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/SelectSubTypingTypeWidget.java161
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetChangeableWidget.java57
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetDerivedWidget.java57
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetOrderedWidget.java57
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetTransientWidget.java57
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetUniqueWidget.java59
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetVolatileWidget.java57
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/properties/bounds/GetLowerBoundWidget.java56
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/properties/bounds/GetUpperBoundWidget.java56
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetAttributeNameWidget.java56
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetOperationNameWidget.java47
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetReferenceNameWidget.java48
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/query/CreateQueryWidget.java105
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/query/GetCanBeCachedWidget.java50
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/query/GetCanHaveSideEffectsWidget.java50
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractDerivedTypedElementWidget.java184
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractENamedElementWidget.java125
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractEStructuralFeatureWidget.java135
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractETypedElementWidget.java188
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/AddOperationInFacetWidget.java104
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/AddParameterInOperationWidget.java119
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/GetFilteredSubTypingTypeWidget.java153
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredFacetSetWidget.java142
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredFacetWidget.java96
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredOperationWidget.java93
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetAttributeWidget.java81
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetOperationParameterWidget.java72
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetOperationWidget.java78
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetReferenceWidget.java81
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetSetWidget.java113
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetWidget.java168
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/CreateFacetSetWizard.java240
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/WizardFactory.java40
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/CreateFacetSetWizardPage.java109
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/FacetSetPropertyWizardPage.java120
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/SynchronizedCreateFacetSetWizardPage.java70
-rw-r--r--plugins/facet/editor/org.eclipse.emf.facet.efacet.sdk.ui/src/org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/SynchronizedFacetSetPropertyWizardPage.java80
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.checkstyle18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.project46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.settings/org.eclipse.jdt.core.prefs8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/META-INF/MANIFEST.MF22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/OSGI-INF/l10n/bundle.properties14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/build.properties17
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/plugin.xml40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/ICustomizationCatalogManager.java65
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/ICustomizationCatalogManagerFactory.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/ICustomizationManager.java91
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/ICustomizationManagerFactory.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/ICustomizationPropertiesCatalogManager.java42
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/ICustomizationPropertiesCatalogManagerFactory.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/exception/CustomizationException.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/Activator.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/CustomizationCatalogManager.java99
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/CustomizationCatalogManagerFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/CustomizationManager.java182
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/CustomizationManagerFactory.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/CustomizationPropertiesCatalogManager.java101
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/CustomizationPropertiesCatalogManagerFactory.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/CustomizationsDelegatingList.java147
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/exception/CustomizationCatalogRuntimeException.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/exported/Constants.java21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/exported/CustomizationUtils.java132
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/query/ETypedElementSwitchQueryImplementation.java83
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/query/ETypedElementSwitchQueryImplementationFactory.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/query/SwitchQueryImplementation.java81
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/emf/facet/custom/core/internal/query/SwitchQueryImplementationFactory.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.project34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.settings/org.eclipse.jdt.core.prefs77
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/META-INF/MANIFEST.MF17
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/build.properties22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateEClassCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_EObjectLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_ETypedElementSwitchQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FalseLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FloatLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IntegerLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IsOneOfQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NavigationQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NullLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_OperationCallQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_StringLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_TrueLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementSwitchQuery_cases_ETypedElementCase.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateFacetCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateTypeCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/Customization.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/EClassCustomization.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/EStructuralFeatureCustomization.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/ETypedElementCase.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/ETypedElementSwitchQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/FacetCustomization.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/TypeCustomization.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/plugin.properties47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/plugin.xml32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomEditPlugin.java101
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomItemProviderAdapterFactory.java304
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomizationItemProvider.java182
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/provider/EClassCustomizationItemProvider.java133
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/provider/ETypedElementCaseItemProvider.java250
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/provider/ETypedElementSwitchQueryItemProvider.java175
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/provider/FacetCustomizationItemProvider.java158
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.project34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.settings/.api_filters29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.settings/org.eclipse.core.resources.prefs4
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.settings/org.eclipse.jdt.core.prefs76
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/META-INF/MANIFEST.MF23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/OSGI-INF/l10n/bundle.properties12
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/build.properties21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/catalog-0.2.0.ecore9
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/catalog-0.2.0.genmodel13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom-0.2.0.ecore45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom-0.2.0.genmodel26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_main.ecorediag429
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_primitive_types-0.2.0.ecore19
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_primitive_types-0.2.0.genmodel23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_property_declaration.ecorediag131
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/query-0.3.0.ecore8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/query-0.3.0.genmodel14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/treeproxy-0.2.0.ecore54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/treeproxy-0.2.0.genmodel30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/plugin.properties14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/plugin.xml41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/custompt/IColor.java23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/custompt/IImage.java22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/CustomFactory.java87
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/CustomPackage.java793
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/Customization.java65
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/EClassCustomization.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/ETypedElementCase.java95
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/ETypedElementSwitchQuery.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/FacetCustomization.java67
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomFactoryImpl.java150
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomPackageImpl.java332
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomizationImpl.java175
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/impl/EClassCustomizationImpl.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/impl/ETypedElementCaseImpl.java249
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/impl/ETypedElementSwitchQueryImpl.java163
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/impl/FacetCustomizationImpl.java170
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/util/CustomAdapterFactory.java357
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/util/CustomSwitch.java367
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationCatalog.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationPropertiesCatalog.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationcatalogFactory.java63
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationcatalogPackage.java209
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationCatalogImpl.java216
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationPropertiesCatalogImpl.java216
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationcatalogFactoryImpl.java117
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationcatalogPackageImpl.java207
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/util/CustomizationcatalogAdapterFactory.java169
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/util/CustomizationcatalogSwitch.java177
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custompt/Alignment.java246
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custompt/CustomptFactory.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custompt/CustomptPackage.java214
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custompt/Shadow.java246
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custompt/impl/CustomptFactoryImpl.java215
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custompt/impl/CustomptPackageImpl.java237
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EAttributeTreeElement.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EObjectTreeElement.java111
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EReferenceTreeElement.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EStructuralFeatureTreeElement.java81
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeElement.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeproxyFactory.java78
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeproxyPackage.java518
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EAttributeTreeElementImpl.java165
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EObjectTreeElementImpl.java308
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EReferenceTreeElementImpl.java165
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EStructuralFeatureTreeElementImpl.java246
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeElementImpl.java60
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeproxyFactoryImpl.java137
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeproxyPackageImpl.java347
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/util/TreeproxyAdapterFactory.java201
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/util/TreeproxySwitch.java225
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_3_0/query/QueryFactory.java52
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_3_0/query/QueryPackage.java179
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_3_0/query/URIImageQuery.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_3_0/query/impl/QueryFactoryImpl.java105
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_3_0/query/impl/QueryPackageImpl.java198
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_3_0/query/impl/URIImageQueryImpl.java174
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_3_0/query/util/QueryAdapterFactory.java150
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/emf/facet/custom/metamodel/v0_3_0/query/util/QuerySwitch.java153
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.checkstyle18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.options5
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.project51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.settings/.api_filters41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.settings/org.eclipse.jdt.core.prefs8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/META-INF/MANIFEST.MF26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/OSGI-INF/component.xml7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/build.properties20
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/aggreg.gifbin0 -> 68 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/aggreg_unidir.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/attribute_facet.gifbin0 -> 438 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/attributes.gifbin0 -> 124 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/feature.gifbin0 -> 294 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/inv_aggreg.gifbin0 -> 70 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link.gifbin0 -> 67 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link_unidir.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link_unidir_facet.gifbin0 -> 375 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/uiCustom.gifbin0 -> 612 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/plugin.xml37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet271
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/CustomizedContentProviderUtils.java77
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/IContentPropertiesHandler.java25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/IContentPropertiesHandlerFactory.java30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/ICustomOverride.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/ICustomizedContentProvider.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/ICustomizedContentProviderFactory.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/ICustomizedLabelProvider.java65
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/ICustomizedLabelProviderFactory.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/ICustomizedToolTipLabelProvider.java68
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/ICustomizedTreeContentProvider.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/IFontPropertiesHandler.java38
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/IResolvingCustomizedLabelProviderFactory.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/ISelectionPropertiesHandler.java24
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/ISelectionPropertiesHandlerFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/ImageUtils.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/Activator.java63
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/CustomizationCommandFactory.java247
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/CustomizationCommandFactoryFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/CustomizedContentProviderFactory.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/CustomizedLabelDecorator.java124
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/CustomizedLabelProvider.java594
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/CustomizedLabelProviderFactory.java28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/CustomizedTreeContentProvider.java330
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/DecoratingCustomizedLabelProvider.java182
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/DefaultCustomOverride.java55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/ImageManager.java98
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/ImageProvider.java181
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/Messages.java70
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/PropertiesHandler.java302
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/PropertiesHandlerFactory.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProvider.java490
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProviderFactory.java26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/TreeElementAdapter.java84
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/custompt/Color.java67
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/custompt/ImageWrapper.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/custompt/URIImage.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/dialog/ColorLabelProvider.java61
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/dialog/LoadCustomizationsDialog.java699
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/dialog/LoadCustomizationsDialogFactory.java46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/dialog/SynchronizedLoadCustomizationsDialog.java222
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/exception/CustomizationEditRuntimeException.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/exception/CustomizedContentProviderRuntimeException.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/exported/CustomizationUIConstants.java27
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/exported/ICustomizationCommandFactory.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/exported/ICustomizationCommandFactoryFactory.java24
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/exported/ILabelPropertiesHandler.java24
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/exported/ILabelPropertiesHandlerFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/exported/dialog/ILoadCustomizationsDialog.java168
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/exported/dialog/ILoadCustomizationsDialogFactory.java72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/exported/exception/IllegalParameterException.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/messages.properties55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/BackgroundQuery.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/FontNameQuery.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/FontSizeQuery.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/ForegroundQuery.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/ImageQuery.java127
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/LabelQuery.java136
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/SelectionQuery.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/ToolTipAlignmentQuery.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/ToolTipBackgroundQuery.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/ToolTipDelayQuery.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/ToolTipShadowQuery.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/ToolTipTextQuery.java76
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/query/URIImageQueryImplementationFactory.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/querytype/URIImageQueryEvaluator.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/emf/facet/custom/ui/internal/view/CustomizationsCatalogView.java223
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/META-INF/MANIFEST.MF36
878 files changed, 87404 insertions, 0 deletions
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/.classpath b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/.classpath
new file mode 100644
index 00000000000..0a91e8e9ef8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src/"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/.project b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/.project
new file mode 100644
index 00000000000..94db7adef73
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.emf.facet.custom.doc</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/MANIFEST.MF b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..6e4a7e834c9
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/MANIFEST.MF
@@ -0,0 +1,99 @@
+Manifest-Version: 1.0
+Build-Jdk: 1.6.0_27
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: %Bundle-Vendor
+Bundle-Name: %Bundle-Name
+Built-By: hudsonbuild
+Bundle-SymbolicName: org.eclipse.emf.facet.custom.doc;singleton:=true
+Require-Bundle: org.eclipse.core.runtime
+Archiver-Version: Plexus Archiver
+Created-By: Apache Maven
+Bundle-Version: 0.4.0.201308190853
+Bundle-ManifestVersion: 2
+
+Name: img/EClassAndFacetCustomizationMetaclasses.png
+SHA1-Digest: KT/9/5377DWv4iHFubpVpN20MO0=
+
+Name: mediawiki/plugin_dev-toc.xml
+SHA1-Digest: EytCw4aqp43EeifY60VasqvtrkQ=
+
+Name: OSGI-INF/l10n/bundle.properties
+SHA1-Digest: jcQC/e7346kZV/NkOrNhYJWUYFI=
+
+Name: mediawiki/plugin_dev.mediawiki
+SHA1-Digest: h1iG9G8dkESwlZ0kGpmC5YEinWE=
+
+Name: mediawiki/user-toc.xml
+SHA1-Digest: hoU8eezblOWf4BkqVNeYXXMCqow=
+
+Name: mediawiki/user.mediawiki
+SHA1-Digest: o2wKLH3th9aHaruxqbK+MxLJe+0=
+
+Name: img/bottomLeftOverlay.png
+SHA1-Digest: dJWbqgt8rfj3KXhfR4aRkMHoXCs=
+
+Name: img/CustomizedEObject.png
+SHA1-Digest: +nOdCJco88LpRtJYdLFgslm6cHE=
+
+Name: img/customizationWithOverride.png
+SHA1-Digest: FgaEwaChv4KhPkEQn00NERWfcnY=
+
+Name: img/LoadCustomizationsDialog.png
+SHA1-Digest: BsfRPTHJdmKxztMo2vOJC96KQ+g=
+
+Name: toc-user.xml
+SHA1-Digest: nJDwOHTLVShDaAKcYawrKvTFWhs=
+
+Name: plugin.xml
+SHA1-Digest: 5KUarOJ2rgoOl2RXSpuXKl5RgXI=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc
+ /pom.properties
+SHA1-Digest: 7/zxAz8zdWAeaTVdcE0Lf9CIq4Q=
+
+Name: META-INF/eclipse.inf
+SHA1-Digest: 09gN05tobgS/MdtqyTNQhOhB73M=
+
+Name: img/ETypedElementSwitchQuery.png
+SHA1-Digest: GGyk2KU3Vw6bM5xBSiDWW5LsTBs=
+
+Name: img/bottomRightOverlay.png
+SHA1-Digest: FA4uzJfZENFYwDw0N2EHoCn2c58=
+
+Name: img/CustomizationMetaclass.png
+SHA1-Digest: clfdviinwTyac0+0ISFY13VU5wE=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc
+ /pom.xml
+SHA1-Digest: 4aJXr5iQjP41tAR9kOZMqLkEn8s=
+
+Name: about.html
+SHA1-Digest: ucbJ2JQyMW17Zy+4pyWJhaS7Sws=
+
+Name: img/topMiddleOverlay.png
+SHA1-Digest: X6CxDIPYy5403NFB0Ojf6Y2s+mQ=
+
+Name: img/customizingFacetWithOverride.png
+SHA1-Digest: EI0DY9KPSRa/fo7Dy94AJTLi6Ww=
+
+Name: mediawiki/user.html
+SHA1-Digest: I3KO0mCYrlOaNRjtRszW3QjwNTQ=
+
+Name: mediawiki/plugin_dev.html
+SHA1-Digest: GytCJgSKFsygnG72KFrdK9NsPTQ=
+
+Name: img/topRightOverlay.png
+SHA1-Digest: RlZCXmpdKj+spQh2HnCjd0nxSmc=
+
+Name: img/LibraryModelInModelBrowser.png
+SHA1-Digest: XmOqZc578G4zTkNwsJZE4ezX1+4=
+
+Name: toc-dev.xml
+SHA1-Digest: 55pxFgCOz/vpnN/huBuMMQE5MtI=
+
+Name: img/topLeftOverlay.png
+SHA1-Digest: jBVSn/vyk1D+ENgZXtuTq70lQlM=
+
+Name: img/bottomMiddleOverlay.png
+SHA1-Digest: KW+VnZzQw+o1q1QXrXgXNv+78fc=
+
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/eclipse.inf b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/eclipse.inf
new file mode 100644
index 00000000000..92ffed2421c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/eclipse.inf
@@ -0,0 +1,2 @@
+#Processed using Jarprocessor
+pack200.conditioned = true
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.properties b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.properties
new file mode 100644
index 00000000000..3ca1751600a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.properties
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Mon Aug 19 04:53:27 EDT 2013
+version=0.4.0-SNAPSHOT
+groupId=org.eclipse.emft
+artifactId=org.eclipse.emf.facet.custom.doc
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.xml b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.xml
new file mode 100644
index 00000000000..d2f00a98984
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns:m2="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.emf.facet.build</artifactId>
+ <groupId>org.eclipse.emft</groupId>
+ <version>0.4.0</version>
+ <relativePath>../../</relativePath>
+ </parent>
+ <groupId>org.eclipse.emft</groupId>
+ <artifactId>org.eclipse.emf.facet.custom.doc</artifactId>
+ <version>0.4.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <version>2.7</version>
+ <executions>
+ <execution>
+ <id>copy</id>
+ <phase>initialize</phase>
+ <goals>
+ <goal>copy</goal>
+ </goals>
+ <configuration>
+ <artifactItems>
+ <artifactItem>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.4</version>
+ <overWrite>false</overWrite>
+ </artifactItem>
+ </artifactItems>
+ <outputDirectory>${project.build.directory}/downloads</outputDirectory>
+ <overWriteReleases>false</overWriteReleases>
+ <overWriteSnapshots>true</overWriteSnapshots>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.7</version>
+ <executions>
+ <execution>
+ <id>generate-doc</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <target>
+ <ant antfile="/opt/users/hudsonbuild/workspace/emffacet-nightly/org.eclipse.emf.facet.releng.tycho.util/doc.build.xml"
+ target="all"
+ inheritRefs="true">
+ <property name="org.eclipse.emf.facet.releng.tycho.util.doc.build.downloads"
+ value="${project.build.directory}/downloads"/>
+ </ant>
+ </target>
+ </configuration>
+ </execution>
+ </executions>
+ <dependencies>
+ <dependency>
+ <groupId>net.sf.saxon</groupId>
+ <artifactId>saxon</artifactId>
+ <version>8.7</version>
+ </dependency>
+ <dependency>
+ <groupId>ant-contrib</groupId>
+ <artifactId>ant-contrib</artifactId>
+ <version>1.0b3</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ant</groupId>
+ <artifactId>ant</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.4</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+ </plugins>
+ </build>
+</project> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/OSGI-INF/l10n/bundle.properties b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..92eb27c8d01
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+###############################################################################
+# Copyright (c) 2012 CEA LIST.
+# 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:
+# Nicolas Bros (Mia-Software) - Bug 375789 - Documentation
+###############################################################################
+#Properties file for org.eclipse.emf.facet.custom.doc
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Customization Documentation (Incubation)
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/about.html b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/about.html
new file mode 100644
index 00000000000..3019b95b9cf
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/about.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>December 22, 2008</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/build.properties b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/build.properties
new file mode 100644
index 00000000000..7a1c7bdf405
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/build.properties
@@ -0,0 +1,9 @@
+source.. = src/
+bin.includes = META-INF/,\
+ img/,\
+ about.html,\
+ plugin.xml,\
+ mediawiki/,\
+ toc-dev.xml,\
+ OSGI-INF/,\
+ toc-user.xml
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/CustomizationMetaclass.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/CustomizationMetaclass.png
new file mode 100644
index 00000000000..fe4a74e1d7e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/CustomizationMetaclass.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/CustomizedEObject.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/CustomizedEObject.png
new file mode 100644
index 00000000000..79760b1990c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/CustomizedEObject.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/EClassAndFacetCustomizationMetaclasses.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/EClassAndFacetCustomizationMetaclasses.png
new file mode 100644
index 00000000000..3a8392f1f42
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/EClassAndFacetCustomizationMetaclasses.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/ETypedElementSwitchQuery.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/ETypedElementSwitchQuery.png
new file mode 100644
index 00000000000..4324dd4a751
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/ETypedElementSwitchQuery.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/LibraryModelInModelBrowser.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/LibraryModelInModelBrowser.png
new file mode 100644
index 00000000000..3b88e3ff353
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/LibraryModelInModelBrowser.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/LoadCustomizationsDialog.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/LoadCustomizationsDialog.png
new file mode 100644
index 00000000000..3f523080f68
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/LoadCustomizationsDialog.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/bottomLeftOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/bottomLeftOverlay.png
new file mode 100644
index 00000000000..9d8ef47410f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/bottomLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/bottomMiddleOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/bottomMiddleOverlay.png
new file mode 100644
index 00000000000..b058dec118f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/bottomMiddleOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/bottomRightOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/bottomRightOverlay.png
new file mode 100644
index 00000000000..8c53d11c1d0
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/bottomRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/customizationWithOverride.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/customizationWithOverride.png
new file mode 100644
index 00000000000..1b64c193f36
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/customizationWithOverride.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/customizingFacetWithOverride.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/customizingFacetWithOverride.png
new file mode 100644
index 00000000000..0930f1e6503
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/customizingFacetWithOverride.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/topLeftOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/topLeftOverlay.png
new file mode 100644
index 00000000000..bea1eaaabe2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/topLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/topMiddleOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/topMiddleOverlay.png
new file mode 100644
index 00000000000..c093897946a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/topMiddleOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/topRightOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/topRightOverlay.png
new file mode 100644
index 00000000000..3df5f727bf2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/img/topRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/plugin_dev-toc.xml b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/plugin_dev-toc.xml
new file mode 100644
index 00000000000..bc252ce1948
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/plugin_dev-toc.xml
@@ -0,0 +1,4 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="mediawiki/plugin_dev.html" label="plugin_dev">
+ <topic href="mediawiki/plugin_dev.html" label="Customization selection dialog"></topic>
+</toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/plugin_dev.html b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/plugin_dev.html
new file mode 100644
index 00000000000..43e5b84ce90
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/plugin_dev.html
@@ -0,0 +1,37 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <title>plugin_dev</title>
+ </head>
+ <body>
+ <h2 id="Customization_selection_dialog">Customization selection dialog</h2>
+ <p>EMF Facet provides a customization selection dialog:</p>
+ <p>
+ <img border="0" src="../img/LoadCustomizationsDialog.png"/>
+ </p>
+ <p>To open this dialog to let the user select customizations, use <code>ILoadCustomizationsDialogFactory#createLoadCustomizationDialog</code> from the plug-in
+ <b>org.eclipse.emf.facet.custom.ui</b>. For example:
+ </p>
+ <pre>
+ILoadCustomizationsDialogListener callback = new ILoadCustomizationsDialogListener() {
+ public void okPressed(List&lt;Customization&gt; selection) {
+ // do something with the selection
+ }
+};
+ILoadCustomizationsDialog dialog = ILoadCustomizationsDialogFactory.DEFAULT.createLoadCustomizationDialog(
+ getShell(), availableCustomizations, initiallySelectedCustomizations, callback);
+dialog.open();
+</pre>
+ <p><font size="-2">
+ Copyright &#169; 2012 Mia-Software.
+ 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
+
+ <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+ Contributors: Nicolas Bros (Mia-Software)
+</font>
+ </p>
+ </body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/plugin_dev.mediawiki b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/plugin_dev.mediawiki
new file mode 100644
index 00000000000..dc3483836f3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/plugin_dev.mediawiki
@@ -0,0 +1,27 @@
+== Customization selection dialog ==
+
+EMF Facet provides a customization selection dialog:
+
+[[Image:../img/LoadCustomizationsDialog.png]]
+
+To open this dialog to let the user select customizations, use <code>ILoadCustomizationsDialogFactory#createLoadCustomizationDialog</code> from the plug-in '''org.eclipse.emf.facet.custom.ui'''. For example:
+
+<pre>
+ILoadCustomizationsDialogListener callback = new ILoadCustomizationsDialogListener() {
+ public void okPressed(List<Customization> selection) {
+ // do something with the selection
+ }
+};
+ILoadCustomizationsDialog dialog = ILoadCustomizationsDialogFactory.DEFAULT.createLoadCustomizationDialog(
+ getShell(), availableCustomizations, initiallySelectedCustomizations, callback);
+dialog.open();
+</pre>
+
+<font size="-2">
+Copyright (c) 2012 Mia-Software.
+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: Nicolas Bros (Mia-Software)
+</font> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/user-toc.xml b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/user-toc.xml
new file mode 100644
index 00000000000..ea95cc8ab3c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/user-toc.xml
@@ -0,0 +1,28 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="mediawiki/user.html" label="user">
+ <topic href="mediawiki/user.html" label="Description"></topic>
+ <topic href="mediawiki/user.html#Customization_Metamodel" label="Customization Metamodel">
+ <topic href="mediawiki/user.html#customizations" label="customizations"></topic>
+ <topic href="mediawiki/user.html#customizable_features" label="customizable features"></topic>
+ <topic href="mediawiki/user.html#customization_override" label="customization override">
+ <topic href="mediawiki/user.html#customizing_an_EClass" label="customizing an EClass"></topic>
+ <topic href="mediawiki/user.html#customizing_a_Facet" label="customizing a Facet"></topic>
+ </topic>
+ <topic href="mediawiki/user.html#customizing_structural_features" label="customizing structural features"></topic>
+ <topic href="mediawiki/user.html#conditional_customization" label="conditional customization"></topic>
+ <topic href="mediawiki/user.html#customization_cases" label="customization cases"></topic>
+ </topic>
+ <topic href="mediawiki/user.html#Example" label="Example"></topic>
+ <topic href="mediawiki/user.html#Default_Customizations" label="Default Customizations">
+ <topic href="mediawiki/user.html#label" label="label"></topic>
+ <topic href="mediawiki/user.html#image" label="image"></topic>
+ <topic href="mediawiki/user.html#color" label="color"></topic>
+ <topic href="mediawiki/user.html#font" label="font"></topic>
+ <topic href="mediawiki/user.html#overlay" label="overlay"></topic>
+ <topic href="mediawiki/user.html#obtaining_customization_properties" label="obtaining customization properties"></topic>
+ </topic>
+ <topic href="mediawiki/user.html#Registration" label="Registration"></topic>
+ <topic href="mediawiki/user.html#Catalog" label="Catalog"></topic>
+ <topic href="mediawiki/user.html#Customization_Manager" label="Customization Manager"></topic>
+ <topic href="mediawiki/user.html#Customized_Providers" label="Customized Providers"></topic>
+</toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/user.html b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/user.html
new file mode 100644
index 00000000000..1c01be0fed8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/user.html
@@ -0,0 +1,445 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <title>user</title>
+ </head>
+ <body>
+ <p><h1>Table of Contents</h1></p>
+ <ol style="list-style: none;">
+ <li>
+ <a href="#Description">Description</a>
+ </li>
+ <li>
+ <a href="#Customization_Metamodel">Customization Metamodel</a>
+ <ol style="list-style: none;">
+ <li>
+ <a href="#customizations">customizations</a>
+ </li>
+ <li>
+ <a href="#customizable_features">customizable features</a>
+ </li>
+ <li>
+ <a href="#customization_override">customization override</a>
+ <ol style="list-style: none;">
+ <li>
+ <a href="#customizing_an_EClass">customizing an EClass</a>
+ </li>
+ <li>
+ <a href="#customizing_a_Facet">customizing a Facet</a>
+ </li>
+ </ol>
+ </li>
+ <li>
+ <a href="#customizing_structural_features">customizing structural features</a>
+ </li>
+ <li>
+ <a href="#conditional_customization">conditional customization</a>
+ </li>
+ <li>
+ <a href="#customization_cases">customization cases</a>
+ </li>
+ </ol>
+ </li>
+ <li>
+ <a href="#Example">Example</a>
+ </li>
+ <li>
+ <a href="#Default_Customizations">Default Customizations</a>
+ <ol style="list-style: none;">
+ <li>
+ <a href="#label">label</a>
+ </li>
+ <li>
+ <a href="#image">image</a>
+ </li>
+ <li>
+ <a href="#color">color</a>
+ </li>
+ <li>
+ <a href="#font">font</a>
+ </li>
+ <li>
+ <a href="#overlay">overlay</a>
+ </li>
+ <li>
+ <a href="#obtaining_customization_properties">obtaining customization properties</a>
+ </li>
+ </ol>
+ </li>
+ <li>
+ <a href="#Registration">Registration</a>
+ </li>
+ <li>
+ <a href="#Catalog">Catalog</a>
+ </li>
+ <li>
+ <a href="#Customization_Manager">Customization Manager</a>
+ </li>
+ <li>
+ <a href="#Customized_Providers">Customized Providers</a>
+ </li>
+ </ol>
+ <p>EMF Facet provides a
+ <b>customization</b> component, that can be used to define the appearance of model elements when viewed in an editor or view that supports this customization mechanism.
+ </p>
+ <h2 id="Description">Description</h2>
+ <p>A customization is defined in a model that conforms to the EMF Facet customization metamodel. This model is saved in a file with the ".custom" file extension.</p>
+ <h2 id="Customization_Metamodel">Customization Metamodel</h2>
+ <h3 id="customizations">customizations</h3>
+ <p>A
+ <b>Customization</b> is a
+ <b>FacetSet</b>:
+ </p>
+ <p>
+ <img border="0" src="../img/CustomizationMetaclass.png"/>
+ </p>
+ <p>A
+ <b>Customization</b> can contain customizations for Ecore metaclasses (
+ <b>EClassCustomization</b>), or Facets (
+ <b>FacetCustomization</b>). Both
+ <b>EClassCustomization</b> and
+ <b>FacetCustomization</b> are Facets.
+ </p>
+ <p>The
+ <b>extendedMetaclass</b> of an
+ <b>EClassCustomization</b> is the EClass whose instances will be customized.
+ </p>
+ <p>The
+ <b>extendedFacet</b> of an
+ <b>EClassCustomization</b> or
+ <b>FacetCustomization</b> is the Facet that defines the customizable features (label, color, etc.) that will be customized.
+ </p>
+ <p>In case of facet customization, the
+ <b>customizedFacet</b> of a
+ <b>FacetCustomization</b> is the Facet for which model elements that conform to this Facet will be customized.
+ </p>
+ <p>
+ <img border="0" src="../img/EClassAndFacetCustomizationMetaclasses.png"/>
+ </p>
+ <h3 id="customizable_features">customizable features</h3>
+ <p>Customizable features are defined in Facets as FacetOperations. For example, this FacetSet defines basic customizable features such as label, icon, etc.: <code>platform:/plugin/org.eclipse.emf.facet.custom.ui/resources/customproperties.efacet</code></p>
+ <p>The following instance diagram shows how a Facet named
+ <b>CustomizedEObject</b> is defined in
+ <i>customproperties.efacet</i>. Its
+ <b>extendedMetaclass</b> is
+ <b>EObject</b>, so it can be used to customize any model element. It contains
+ <b>FacetOperations</b> (of which only two are represented here). These FacetOperations define the customizable features: here the
+ <b>label</b> and
+ <b>image</b> for a model element. The type of each of these FacetOperations is the customized feature's type : an
+ <b>EString</b> for the label and an
+ <b>Image</b> for the image.
+ </p>
+ <p>
+ <img border="0" src="../img/CustomizedEObject.png"/>
+ </p>
+ <p>The operation is called each time the value of its customization is needed. For example, when displaying a model element in a viewer, we will need its label. So the
+ <b>label</b> operation will be called on the model element for which the label is needed.
+ </p>
+ <h3 id="customization_override">customization override</h3>
+ <p>A FacetOperation that defines a customizable feature such as label, icon, color, font, etc. can be compared to a virtual method: it is meant to be overridden in extending Facets in order to provide a specific customization.</p>
+ <p>To understand this override mechanism, remember that a
+ <b>EClassCustomization</b> and
+ <b>FacetCustomization</b> are
+ <b>Facets</b> (the
+ <b>EClassCustomization</b> and
+ <b>FacetCustomization</b> metaclasses extend the
+ <b>Facet</b> metaclass).
+ </p>
+ <h4 id="customizing_an_EClass">customizing an EClass</h4>
+ <p>To create a customization for instances of an
+ <b>EClass</b>:
+ </p>
+ <ul>
+ <li>create an
+ <b>EClassCustomization</b>
+ </li>
+ <li>the new
+ <b>EClassCustomization</b>'s
+ <b>extendedMetaclass</b> is the
+ <b>EClass</b> whose instances you want to customize
+ </li>
+ <li>the new
+ <b>EClassCustomization</b>'s
+ <b>extendedFacet</b> is the Facet that defines the customizable feature you want to customize (i.e. the label, color, font,...)
+ </li>
+ <li>you create a
+ <b>FacetOperation</b> in your
+ <b>EClassCustomization</b> for each customizable feature you want to customize
+ </li>
+ <li>each of these
+ <b>FacetOperations</b>
+ <b>overrides</b> the
+ <b>FacetOperation</b> (from the
+ <b>extendedFacet</b>) corresponding to the customizable feature you want to customize
+ </li>
+ <li>the overriding FacetOperation and the overridden FacetOperation must have the same type</li>
+ <li>finally, you provide an implementation for your overriding
+ <b>FacetOperation</b>, by the means of a
+ <b>Query</b> that will return the value of the customization when this Query is evaluated on an instance of the
+ <b>extendedMetaclass</b>
+ </li>
+ </ul>
+ <p>In the following example, we customize the label of instances of the
+ <b>Writer</b> metaclass from a library metamodel (defined in
+ <i>library.ecore</i>). For this, we create an
+ <b>EClassCustomization</b> which extends the
+ <b>CustomizedEObject</b> Facet. This
+ <b>CustomizedEObject</b> Facet provides the customizable feature
+ <b>label</b> which we want to customize. So, we create a FacetOperation (in our EClassCustomization) which overrides the
+ <b>label</b> FacetOperation (in CustomizedEObject). Finally, we choose to provide the label using a Java query, so we create a JavaQuery under our label FacetOperation's
+ <b>query</b> reference. We set this JavaQuery's
+ <b>implementationClassName</b> to the full qualified name of a Java class that implements the query and returns the label corresponding to a Writer instance passed as a
+ <b>source</b> to this query.
+ </p>
+ <p>
+ <img border="0" src="../img/customizationWithOverride.png"/>
+ </p>
+ <h4 id="customizing_a_Facet">customizing a Facet</h4>
+ <p>To create a customization for model elements that conform to a
+ <b>Facet</b>:
+ </p>
+ <ul>
+ <li>create a
+ <b>FacetCustomization</b>
+ </li>
+ <li>the new
+ <b>FacetCustomization</b>'s
+ <b>extendedFacet</b> is the
+ <b>Facet</b> whose conforming elements you want to customize
+ </li>
+ <li>you create a
+ <b>FacetOperation</b> in your
+ <b>FacetCustomization</b> for each customizable feature (label, font, color, etc.) you want to customize
+ </li>
+ <li>each of these
+ <b>FacetOperations</b>
+ <b>overrides</b> the
+ <b>FacetOperation</b> corresponding to the customizable feature you want to customize
+ </li>
+ <li>the overriding FacetOperation and the overridden FacetOperation must have the same type</li>
+ <li>finally, you provide an implementation for your overriding
+ <b>FacetOperation</b>, by the means of a
+ <b>Query</b> that will return the value of the customization when this Query is evaluated on a model element that conforms to the
+ <b>extendedFacet</b>
+ </li>
+ </ul>
+ <p>In the following example, we want to add an overlay icon on elements that conform to the
+ <b>UnproductiveWriter</b> metaclass from the library FacetSet (defined in
+ <i>library.efacet</i>). For this, we create an
+ <b>FacetCustomization</b> which extends the
+ <b>UnproductiveWriter</b> Facet. We create a FacetOperation (in our FacetCustomization) which overrides the
+ <b>bottomRightOverlay</b> FacetOperation that allows adding an overlay icon in the bottom right corner of an element's main icon. Finally, we provide the overlay icon using a query. This query will be evaluated with instances of
+ <b>Writer</b> that conform to the
+ <b>UnproductiveWriter</b> Facet, and will return the overlay icon.
+ </p>
+ <p>
+ <img border="0" src="../img/customizingFacetWithOverride.png"/>
+ </p>
+ <h3 id="customizing_structural_features">customizing structural features</h3>
+ <p>Each FacetOperation that defines a customizable feature has a parameter named
+ <b>eStructuralFeature</b>. This parameter is useful for customizing the structural feature corresponding to a single model element. For example, in the following screenshot, a
+ <b>Library</b> model element contains
+ <b>Writers</b> through a structural feature named
+ <b>writers</b>. If we want to customize this
+ <b>writers</b> structural feature in the context of its parent
+ <b>Library</b>, then we need both the
+ <b>Library</b> model element and the
+ <b>writers</b> feature. In this case, the FacetOperation would be called on the
+ <b>Library</b> model element, and the value of the
+ <b>eStructuralFeature</b> parameter would be the
+ <b>writers</b> feature.
+ </p>
+ <p>
+ <img border="0" src="../img/LibraryModelInModelBrowser.png"/>
+ </p>
+ <h3 id="conditional_customization">conditional customization</h3>
+ <p>To specify that a customization should only be applied to elements that satisfy certain criteria, you have two choices:</p>
+ <ul>
+ <li>Either customize a Facet that applies to elements you want to customize. This is the preferred way.</li>
+ <li>Customize an EClass and set the
+ <b>conformanceTypedElement</b> of the customization to a boolean attribute (
+ <b>EAttribute</b> or
+ <b>FacetAttribute</b>) that returns whether the customization should be applied on the attribute's source element.
+ </li>
+ </ul>
+ <h3 id="customization_cases">customization cases</h3>
+ <p>To handle several cases in a customization (to return different values for a single customized feature depending on boolean conditions), you can implement the customized
+ <b>FacetOperation</b> with an
+ <b>ETypedElementSwitchQuery</b>. This type of query returns the value corresponding to the first of its cases that evaluates to
+ <b>true</b>.
+ </p>
+ <p>
+ <img border="0" src="../img/ETypedElementSwitchQuery.png"/>
+ </p>
+ <h2 id="Example">Example</h2>
+ <p>Since there is no dedicated UI tooling as yet for editing customizations, you will have to use either a generic model editor or write the XMI by hand for now. Here is an example of a customization model in the XMI format. This example defines a customization for the
+ <b>Writer</b> metaclass, that customizes the label for
+ <b>Writer</b> model elements. And a second customization that customizes the
+ <b>UnproductiveWriter</b> Facet, to add an overlay to the icon of model elements that conform to the
+ <b>UnproductiveWriter</b> Facet.
+ </p>
+ <pre>
+&lt;custom:Customization
+ xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:custom="http://www.eclipse.org/emf/facet/custom/0.2.incubation/custom"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:efacet="http://www.eclipse.org/emf/facet/efacet/0.2.incubation/efacet"
+ xmlns:javaQuery2="http://www.eclipse.org/emf/facet/query/java/0.2.incubation"
+ name="org.eclipse.emf.facet.efacet.examples.library.core.custom"&gt;
+
+ &lt;eClassifiers xsi:type="custom:EClassCustomization"&gt;
+ &lt;extendedMetaclass href="http://www.eclipse.org/emf/facet/examples/library/0.2.incubation/library#//Writer"/&gt;
+ &lt;extendedFacets href="platform:/plugin/org.eclipse.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject"/&gt;
+ &lt;facetOperations xsi:type="efacet:FacetOperation" name="label" lowerBound="1"&gt;
+ &lt;eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/&gt;
+ &lt;query xsi:type="javaQuery2:JavaQuery" implementationClassName="org.eclipse.emf.facet.efacet.examples.library.core.internal.queries.WriterLabel"/&gt;
+ &lt;override xsi:type="efacet:FacetOperation" href="platform:/plugin/org.eclipse.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/label"/&gt;
+ &lt;eParameters xsi:type="ecore:EParameter" name="eStructuralFeature"&gt;
+ &lt;eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/&gt;
+ &lt;/eParameters&gt;
+ &lt;/facetOperations&gt;
+ &lt;/eClassifiers&gt;
+
+ &lt;eClassifiers xsi:type="custom:FacetCustomization"&gt;
+ &lt;extendedFacets href="platform:/plugin/org.eclipse.emf.facet.efacet.examples.library.core/library.efacet#//writer/UnproductiveWriter"/&gt;
+ &lt;facetOperations xsi:type="efacet:FacetOperation" name="bottomRightOverlay" lowerBound="1"&gt;
+ &lt;eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/&gt;
+ &lt;query xsi:type="javaQuery2:JavaQuery" implementationClassName="org.eclipse.emf.facet.efacet.examples.library.core.internal.queries.UnproductiveWriterOverlay"/&gt;
+ &lt;override xsi:type="efacet:FacetOperation" href="platform:/plugin/org.eclipse.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/bottomRightOverlay"/&gt;
+ &lt;eParameters xsi:type="ecore:EParameter" name="eStructuralFeature"&gt;
+ &lt;eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/&gt;
+ &lt;/eParameters&gt;
+ &lt;/facetOperations&gt;
+ &lt;/eClassifiers&gt;
+&lt;/custom:Customization&gt;
+</pre>
+ <h2 id="Default_Customizations">Default Customizations</h2>
+ <h3 id="label">label</h3>
+ <p>The text displayed for a model element can be customized with the
+ <b>label</b> customization defined on CustomizedEObject.
+ </p>
+ <h3 id="image">image</h3>
+ <p>The icon that appears before the text for a model element can be customized with the
+ <b>image</b> customization defined on CustomizedEObject.
+ </p>
+ <h3 id="color">color</h3>
+ <p>Both the text color (
+ <b>foreground</b>) and background color (
+ <b>background</b>) can be customized.
+ </p>
+ <h3 id="font">font</h3>
+ <p>The following font-related properties are defined on CustomizedEObject and can be customized:</p>
+ <ul>
+ <li>fontName</li>
+ <li>fontSize</li>
+ <li>isBold</li>
+ <li>isItalic</li>
+ <li>isUnderlined</li>
+ <li>isStruckthrough</li>
+ </ul>
+ <h3 id="overlay">overlay</h3>
+ <p>In addition to the main icon displayed for a model element, up to six additional
+ <i>overlay</i> icons can be displayed in the corners of the main icon. The following image depicts the position of each overlay relative to the main icon:
+ </p>
+ <table style="text-align: center; border-style: solid; border-width: 2px; border-color: #000">
+ <tr>
+ <td>
+ <img border="0" src="../img/topLeftOverlay.png"/>
+ </td>
+ <td>
+ <img border="0" src="../img/topMiddleOverlay.png"/>
+ </td>
+ <td>
+ <img border="0" src="../img/topRightOverlay.png"/>
+ </td>
+ </tr>
+ <tr>
+ <td>topLeftOverlay</td>
+ <td>topMiddleOverlay</td>
+ <td>topRightOverlay</td>
+ </tr>
+ <tr>
+ <td>
+ <img border="0" src="../img/bottomLeftOverlay.png"/>
+ </td>
+ <td>
+ <img border="0" src="../img/bottomMiddleOverlay.png"/>
+ </td>
+ <td>
+ <img border="0" src="../img/bottomRightOverlay.png"/>
+ </td>
+ </tr>
+ <tr>
+ <td>bottomLeftOverlay</td>
+ <td>bottomMiddleOverlay</td>
+ <td>bottomRightOverlay</td>
+ </tr>
+ </table>
+ <p>Overlays should be defined on Facets (using a
+ <b>FacetCustomization</b>). You will get a warning if you define an overlay on an EClass (with
+ <b>EClassCustomization</b>). This warning may be disabled in the preferences, in section
+ <b>Model Validation &gt; Constraints</b> : check or uncheck
+ <b>EMF Facet Custom Model Validation &gt; Avoid EClass Overlay</b>.
+ </p>
+ <h3 id="obtaining_customization_properties">obtaining customization properties</h3>
+ <p>The default customization properties defined in EMF Facet can be obtained from the following set of interfaces:</p>
+ <ul>
+ <li>IContentPropertiesHandler (instantiate through IContentPropertiesHandlerFactory)</li>
+ <li>ISelectionPropertiesHandler (instantiate through ISelectionPropertiesHandlerFactory)</li>
+ </ul>
+ <h2 id="Registration">Registration</h2>
+ <p>To make a customization available at runtime in the customization catalog, you must register it with extension point
+ <b>org.eclipse.emf.facet.util.emf.core.modeldeclaration</b>, like this:
+ </p>
+ <pre>
+&lt;extension point="org.eclipse.emf.facet.util.emf.core.modeldeclaration"&gt;
+ &lt;modeldeclaration file="myCustomization.custom"/&gt;
+&lt;/extension&gt;
+Also, your ".custom" file must be included in your plug-in's build.properties in order to be available in deployed plug-ins.
+</pre>
+ <h2 id="Catalog">Catalog</h2>
+ <p>Customizations that have been
+ <a href="#Registration">registered</a> are available from the customization catalog.
+ For example, if you want to retrieve the list of all registered customizations:
+ </p>
+ <pre>
+ICustomizationCatalogManager customCatalog = ICustomizationCatalogManagerFactory.DEFAULT
+ .getOrCreateCustomizationCatalogManager(new ResourceSetImpl());
+List&lt;Customization&gt; allCustomizations = customCatalog.getRegisteredCustomizations();
+</pre>
+ <p>Then you can for example look for a customization with a given name in the previous list:</p>
+ <pre>
+Customization myCustom = CustomizationUtils.getCustomization(allCustomizations, "MyCustomization");
+</pre>
+ <h2 id="Customization_Manager">Customization Manager</h2>
+ <p>The customization manager is used to manipulate customizations. To obtain an instance of the CustomizationManager, you must ask the customization manager factory:</p>
+ <pre>
+ICustomizationManager customManager = ICustomizationManagerFactory.DEFAULT.getOrCreateICustomizationManager(resourceSet);
+</pre>
+ <p>The resourceSet parameter must be the same ResourceSet that was used to instantiate a customization catalog manager in <code>ICustomizationCatalogManagerFactory#getOrCreateCustomizationCatalogManager</code>. </p>
+ <p>The customization manager provides these important methods:</p>
+ <ul>
+ <li>getManagedCustomizations() : returns a modifiable list of customizations managed by this customization manager. For example, to add a customization: <code>customManager.getManagedCustomizations().add(custom);</code></li>
+ <li>getCustomValueOf(EObject, FacetOperation, Class) : evaluates a customization property on a given object, and returns the result. The class parameter is used to typecheck the result and return a value of the correct type. For example: <code>Boolean result = customManager.getCustomValueOf(eObject, aBooleanProperty, Boolean.class);</code></li>
+ </ul>
+ <h2 id="Customized_Providers">Customized Providers</h2>
+ <p>You don't always have to interact with the customization manager directly though: when you want to evaluate a standard customization property (label, image, visibility, etc.), you can use a customized label or content provider supplied by EMF Facet:</p>
+ <ul>
+ <li>ICustomizedLabelProvider (instantiate through ICustomizedLabelProviderFactory or IResolvingCustomizedLabelProviderFactory)</li>
+ <li>ICustomizedTreeContentProvider (instantiate through ICustomizedContentProviderFactory)</li>
+ </ul>
+ <p><font size="-2">
+ Copyright &#169; 2012 Mia-Software.
+ 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
+
+ <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+ Contributors: Nicolas Bros (Mia-Software) ; Laurent Pichierri (Soft-Maint) - Bug 375789 - Documentation
+</font>
+ </p>
+ </body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/user.mediawiki b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/user.mediawiki
new file mode 100644
index 00000000000..b4c7671d802
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/mediawiki/user.mediawiki
@@ -0,0 +1,224 @@
+<h1>Table of Contents</h1>
+__TOC__
+
+EMF Facet provides a '''customization''' component, that can be used to define the appearance of model elements when viewed in an editor or view that supports this customization mechanism.
+
+== Description ==
+A customization is defined in a model that conforms to the EMF Facet customization metamodel. This model is saved in a file with the ".custom" file extension.
+
+== Customization Metamodel ==
+
+=== customizations ===
+
+A '''Customization''' is a '''FacetSet''':
+
+[[Image:../img/CustomizationMetaclass.png]]
+
+A '''Customization''' can contain customizations for Ecore metaclasses ('''EClassCustomization'''), or Facets ('''FacetCustomization'''). Both '''EClassCustomization''' and '''FacetCustomization''' are Facets.
+
+The '''extendedMetaclass''' of an '''EClassCustomization''' is the EClass whose instances will be customized.
+
+The '''extendedFacet''' of an '''EClassCustomization''' or '''FacetCustomization''' is the Facet that defines the customizable features (label, color, etc.) that will be customized.
+
+In case of facet customization, the '''customizedFacet''' of a '''FacetCustomization''' is the Facet for which model elements that conform to this Facet will be customized.
+
+[[Image:../img/EClassAndFacetCustomizationMetaclasses.png]]
+
+=== customizable features ===
+
+Customizable features are defined in Facets as FacetOperations. For example, this FacetSet defines basic customizable features such as label, icon, etc.: <code>platform:/plugin/org.eclipse.emf.facet.custom.ui/resources/customproperties.efacet</code>
+
+The following instance diagram shows how a Facet named '''CustomizedEObject''' is defined in ''customproperties.efacet''. Its '''extendedMetaclass''' is '''EObject''', so it can be used to customize any model element. It contains '''FacetOperations''' (of which only two are represented here). These FacetOperations define the customizable features: here the '''label''' and '''image''' for a model element. The type of each of these FacetOperations is the customized feature's type : an '''EString''' for the label and an '''Image''' for the image.
+
+[[Image:../img/CustomizedEObject.png]]
+
+The operation is called each time the value of its customization is needed. For example, when displaying a model element in a viewer, we will need its label. So the '''label''' operation will be called on the model element for which the label is needed.
+
+=== customization override ===
+A FacetOperation that defines a customizable feature such as label, icon, color, font, etc. can be compared to a virtual method: it is meant to be overridden in extending Facets in order to provide a specific customization.
+
+To understand this override mechanism, remember that a '''EClassCustomization''' and '''FacetCustomization''' are '''Facets''' (the '''EClassCustomization''' and '''FacetCustomization''' metaclasses extend the '''Facet''' metaclass).
+
+==== customizing an EClass ====
+
+To create a customization for instances of an '''EClass''':
+* create an '''EClassCustomization'''
+* the new '''EClassCustomization''''s '''extendedMetaclass''' is the '''EClass''' whose instances you want to customize
+* the new '''EClassCustomization''''s '''extendedFacet''' is the Facet that defines the customizable feature you want to customize (i.e. the label, color, font,...)
+* you create a '''FacetOperation''' in your '''EClassCustomization''' for each customizable feature you want to customize
+* each of these '''FacetOperations''' '''overrides''' the '''FacetOperation''' (from the '''extendedFacet''') corresponding to the customizable feature you want to customize
+* the overriding FacetOperation and the overridden FacetOperation must have the same type
+* finally, you provide an implementation for your overriding '''FacetOperation''', by the means of a '''Query''' that will return the value of the customization when this Query is evaluated on an instance of the '''extendedMetaclass'''
+
+In the following example, we customize the label of instances of the '''Writer''' metaclass from a library metamodel (defined in ''library.ecore''). For this, we create an '''EClassCustomization''' which extends the '''CustomizedEObject''' Facet. This '''CustomizedEObject''' Facet provides the customizable feature '''label''' which we want to customize. So, we create a FacetOperation (in our EClassCustomization) which overrides the '''label''' FacetOperation (in CustomizedEObject). Finally, we choose to provide the label using a Java query, so we create a JavaQuery under our label FacetOperation's '''query''' reference. We set this JavaQuery's '''implementationClassName''' to the full qualified name of a Java class that implements the query and returns the label corresponding to a Writer instance passed as a '''source''' to this query.
+
+[[Image:../img/customizationWithOverride.png]]
+
+==== customizing a Facet ====
+
+To create a customization for model elements that conform to a '''Facet''':
+* create a '''FacetCustomization'''
+* the new '''FacetCustomization''''s '''extendedFacet''' is the '''Facet''' whose conforming elements you want to customize
+* you create a '''FacetOperation''' in your '''FacetCustomization''' for each customizable feature (label, font, color, etc.) you want to customize
+* each of these '''FacetOperations''' '''overrides''' the '''FacetOperation''' corresponding to the customizable feature you want to customize
+* the overriding FacetOperation and the overridden FacetOperation must have the same type
+* finally, you provide an implementation for your overriding '''FacetOperation''', by the means of a '''Query''' that will return the value of the customization when this Query is evaluated on a model element that conforms to the '''extendedFacet'''
+
+In the following example, we want to add an overlay icon on elements that conform to the '''UnproductiveWriter''' metaclass from the library FacetSet (defined in ''library.efacet''). For this, we create an '''FacetCustomization''' which extends the '''UnproductiveWriter''' Facet. We create a FacetOperation (in our FacetCustomization) which overrides the '''bottomRightOverlay''' FacetOperation that allows adding an overlay icon in the bottom right corner of an element's main icon. Finally, we provide the overlay icon using a query. This query will be evaluated with instances of '''Writer''' that conform to the '''UnproductiveWriter''' Facet, and will return the overlay icon.
+
+[[Image:../img/customizingFacetWithOverride.png]]
+
+=== customizing structural features ===
+
+Each FacetOperation that defines a customizable feature has a parameter named '''eStructuralFeature'''. This parameter is useful for customizing the structural feature corresponding to a single model element. For example, in the following screenshot, a '''Library''' model element contains '''Writers''' through a structural feature named '''writers'''. If we want to customize this '''writers''' structural feature in the context of its parent '''Library''', then we need both the '''Library''' model element and the '''writers''' feature. In this case, the FacetOperation would be called on the '''Library''' model element, and the value of the '''eStructuralFeature''' parameter would be the '''writers''' feature.
+
+[[Image:../img/LibraryModelInModelBrowser.png]]
+
+=== conditional customization ===
+
+To specify that a customization should only be applied to elements that satisfy certain criteria, you have two choices:
+* Either customize a Facet that applies to elements you want to customize. This is the preferred way.
+* Customize an EClass and set the '''conformanceTypedElement''' of the customization to a boolean attribute ('''EAttribute''' or '''FacetAttribute''') that returns whether the customization should be applied on the attribute's source element.
+
+=== customization cases ===
+
+To handle several cases in a customization (to return different values for a single customized feature depending on boolean conditions), you can implement the customized '''FacetOperation''' with an '''ETypedElementSwitchQuery'''. This type of query returns the value corresponding to the first of its cases that evaluates to '''true'''.
+
+[[Image:../img/ETypedElementSwitchQuery.png]]
+
+
+== Example ==
+Since there is no dedicated UI tooling as yet for editing customizations, you will have to use either a generic model editor or write the XMI by hand for now. Here is an example of a customization model in the XMI format. This example defines a customization for the '''Writer''' metaclass, that customizes the label for '''Writer''' model elements. And a second customization that customizes the '''UnproductiveWriter''' Facet, to add an overlay to the icon of model elements that conform to the '''UnproductiveWriter''' Facet.
+
+<pre>
+<custom:Customization
+ xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:custom="http://www.eclipse.org/emf/facet/custom/0.2.incubation/custom"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:efacet="http://www.eclipse.org/emf/facet/efacet/0.2.incubation/efacet"
+ xmlns:javaQuery2="http://www.eclipse.org/emf/facet/query/java/0.2.incubation"
+ name="org.eclipse.emf.facet.efacet.examples.library.core.custom">
+
+ <eClassifiers xsi:type="custom:EClassCustomization">
+ <extendedMetaclass href="http://www.eclipse.org/emf/facet/examples/library/0.2.incubation/library#//Writer"/>
+ <extendedFacets href="platform:/plugin/org.eclipse.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject"/>
+ <facetOperations xsi:type="efacet:FacetOperation" name="label" lowerBound="1">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <query xsi:type="javaQuery2:JavaQuery" implementationClassName="org.eclipse.emf.facet.efacet.examples.library.core.internal.queries.WriterLabel"/>
+ <override xsi:type="efacet:FacetOperation" href="platform:/plugin/org.eclipse.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/label"/>
+ <eParameters xsi:type="ecore:EParameter" name="eStructuralFeature">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/>
+ </eParameters>
+ </facetOperations>
+ </eClassifiers>
+
+ <eClassifiers xsi:type="custom:FacetCustomization">
+ <extendedFacets href="platform:/plugin/org.eclipse.emf.facet.efacet.examples.library.core/library.efacet#//writer/UnproductiveWriter"/>
+ <facetOperations xsi:type="efacet:FacetOperation" name="bottomRightOverlay" lowerBound="1">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <query xsi:type="javaQuery2:JavaQuery" implementationClassName="org.eclipse.emf.facet.efacet.examples.library.core.internal.queries.UnproductiveWriterOverlay"/>
+ <override xsi:type="efacet:FacetOperation" href="platform:/plugin/org.eclipse.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/bottomRightOverlay"/>
+ <eParameters xsi:type="ecore:EParameter" name="eStructuralFeature">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/>
+ </eParameters>
+ </facetOperations>
+ </eClassifiers>
+</custom:Customization>
+</pre>
+
+== Default Customizations ==
+=== label ===
+The text displayed for a model element can be customized with the '''label''' customization defined on CustomizedEObject.
+
+=== image ===
+The icon that appears before the text for a model element can be customized with the '''image''' customization defined on CustomizedEObject.
+
+=== color ===
+Both the text color ('''foreground''') and background color ('''background''') can be customized.
+
+=== font ===
+The following font-related properties are defined on CustomizedEObject and can be customized:
+* fontName
+* fontSize
+* isBold
+* isItalic
+* isUnderlined
+* isStruckthrough
+
+=== overlay ===
+In addition to the main icon displayed for a model element, up to six additional ''overlay'' icons can be displayed in the corners of the main icon. The following image depicts the position of each overlay relative to the main icon:
+
+{|style="text-align: center; border-style: solid; border-width: 2px; border-color: #000"
+|[[Image:../img/topLeftOverlay.png]]
+|[[Image:../img/topMiddleOverlay.png]]
+|[[Image:../img/topRightOverlay.png]]
+|-
+|topLeftOverlay
+|topMiddleOverlay
+|topRightOverlay
+|-
+|[[Image:../img/bottomLeftOverlay.png]]
+|[[Image:../img/bottomMiddleOverlay.png]]
+|[[Image:../img/bottomRightOverlay.png]]
+|-
+|bottomLeftOverlay
+|bottomMiddleOverlay
+|bottomRightOverlay
+|}
+
+Overlays should be defined on Facets (using a '''FacetCustomization'''). You will get a warning if you define an overlay on an EClass (with '''EClassCustomization'''). This warning may be disabled in the preferences, in section '''Model Validation > Constraints''' : check or uncheck '''EMF Facet Custom Model Validation > Avoid EClass Overlay'''.
+
+=== obtaining customization properties ===
+The default customization properties defined in EMF Facet can be obtained from the following set of interfaces:
+* IContentPropertiesHandler (instantiate through IContentPropertiesHandlerFactory)
+* ISelectionPropertiesHandler (instantiate through ISelectionPropertiesHandlerFactory)
+
+== Registration ==
+To make a customization available at runtime in the customization catalog, you must register it with extension point '''org.eclipse.emf.facet.util.emf.core.modeldeclaration''', like this:
+<pre>
+<extension point="org.eclipse.emf.facet.util.emf.core.modeldeclaration">
+ <modeldeclaration file="myCustomization.custom"/>
+</extension>
+Also, your ".custom" file must be included in your plug-in's build.properties in order to be available in deployed plug-ins.
+</pre>
+
+== Catalog ==
+Customizations that have been [[#Registration|registered]] are available from the customization catalog.
+For example, if you want to retrieve the list of all registered customizations:
+<pre>
+ICustomizationCatalogManager customCatalog = ICustomizationCatalogManagerFactory.DEFAULT
+ .getOrCreateCustomizationCatalogManager(new ResourceSetImpl());
+List<Customization> allCustomizations = customCatalog.getRegisteredCustomizations();
+</pre>
+Then you can for example look for a customization with a given name in the previous list:
+<pre>
+Customization myCustom = CustomizationUtils.getCustomization(allCustomizations, "MyCustomization");
+</pre>
+
+== Customization Manager ==
+
+The customization manager is used to manipulate customizations. To obtain an instance of the CustomizationManager, you must ask the customization manager factory:
+<pre>
+ICustomizationManager customManager = ICustomizationManagerFactory.DEFAULT.getOrCreateICustomizationManager(resourceSet);
+</pre>
+The resourceSet parameter must be the same ResourceSet that was used to instantiate a customization catalog manager in <code>ICustomizationCatalogManagerFactory#getOrCreateCustomizationCatalogManager</code>.
+
+The customization manager provides these important methods:
+* getManagedCustomizations() : returns a modifiable list of customizations managed by this customization manager. For example, to add a customization: <code>customManager.getManagedCustomizations().add(custom);</code>
+* getCustomValueOf(EObject, FacetOperation, Class) : evaluates a customization property on a given object, and returns the result. The class parameter is used to typecheck the result and return a value of the correct type. For example: <code>Boolean result = customManager.getCustomValueOf(eObject, aBooleanProperty, Boolean.class);</code>
+
+== Customized Providers ==
+You don't always have to interact with the customization manager directly though: when you want to evaluate a standard customization property (label, image, visibility, etc.), you can use a customized label or content provider supplied by EMF Facet:
+* ICustomizedLabelProvider (instantiate through ICustomizedLabelProviderFactory or IResolvingCustomizedLabelProviderFactory)
+* ICustomizedTreeContentProvider (instantiate through ICustomizedContentProviderFactory)
+
+<font size="-2">
+Copyright (c) 2012 Mia-Software.
+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: Nicolas Bros (Mia-Software) ; Laurent Pichierri (Soft-Maint) - Bug 375789 - Documentation
+</font>
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/plugin.xml b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/plugin.xml
new file mode 100644
index 00000000000..3a3503d18c5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/plugin.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ Copyright (c) 2012 CEA LIST.
+
+ 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:
+ Nicolas Bros (Mia-Software) - Bug 375789 - Documentation
+-->
+<plugin>
+ <extension point="org.eclipse.help.toc">
+ <toc file="toc-user.xml" primary="false"/>
+ <toc file="toc-dev.xml" primary="false"/>
+ </extension>
+</plugin>
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/toc-dev.xml b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/toc-dev.xml
new file mode 100644
index 00000000000..6344c16fb18
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/toc-dev.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2012 CEA LIST.
+
+ 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:
+ Nicolas Bros (Mia-Software) - Bug 375789 - Documentation
+-->
+<toc label="Customization" link_to="../org.eclipse.emf.facet.doc/maintoc.xml#dev.anchor.2">
+ <topic label="Customization" href="mediawiki/plugin_dev.html"/>
+</toc>
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/toc-user.xml b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/toc-user.xml
new file mode 100644
index 00000000000..87f4c9b56b9
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.doc/toc-user.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2012 CEA LIST.
+
+ 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:
+ Nicolas Bros (Mia-Software) - Bug 375789 - Documentation
+-->
+<toc label="Customization" link_to="../org.eclipse.emf.facet.doc/maintoc.xml#user.anchor.2">
+ <topic label="Customization" href="mediawiki/user.html"/>
+</toc>
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/.project b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/.project
new file mode 100644
index 00000000000..8a3ea32073d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/.project
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.emf.facet.custom.metamodel.editor.doc</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/.settings/org.eclipse.core.resources.prefs b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..1c7907bc702
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+encoding//resource/editor-toc.xml=utf-8
+encoding//resource/editor.html=utf-8
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/META-INF/MANIFEST.MF b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..f135ac5235b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/META-INF/MANIFEST.MF
@@ -0,0 +1,5 @@
+Bundle-ManifestVersion: 2
+Bundle-Name: Doc
+Bundle-SymbolicName: org.eclipse.emf.facet.custom.metamodel.editor.doc;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Require-Bundle: org.eclipse.help
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/build.properties b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/build.properties
new file mode 100644
index 00000000000..47663ae2b76
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/build.properties
@@ -0,0 +1,3 @@
+bin.includes = META-INF/,\
+ resource/,\
+ plugin.xml
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/plugin.xml b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/plugin.xml
new file mode 100644
index 00000000000..bf9f4621285
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/plugin.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension point="org.eclipse.help.toc">
+ <toc file="resource/editor-toc.xml" primary="true"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomCreation1.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomCreation1.png
new file mode 100644
index 00000000000..b7ce2be5d6a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomCreation1.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomEdition.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomEdition.png
new file mode 100644
index 00000000000..293be89ee3f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomEdition.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/EditorWithEmptyFile.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/EditorWithEmptyFile.png
new file mode 100644
index 00000000000..09750a8c957
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/EditorWithEmptyFile.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FacetCustomCreation1.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FacetCustomCreation1.png
new file mode 100644
index 00000000000..8a787419b71
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FacetCustomCreation1.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationCreation1.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationCreation1.png
new file mode 100644
index 00000000000..da82b169bb0
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationCreation1.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationSpecifyQuery.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationSpecifyQuery.png
new file mode 100644
index 00000000000..2a56ae18c97
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationSpecifyQuery.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FineTuneEClassCustomization.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FineTuneEClassCustomization.png
new file mode 100644
index 00000000000..0768ed91326
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/FineTuneEClassCustomization.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/RightPaneldescription.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/RightPaneldescription.png
new file mode 100644
index 00000000000..0eff804280d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/RightPaneldescription.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation1.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation1.png
new file mode 100644
index 00000000000..11e4c4845e5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation1.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation2.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation2.png
new file mode 100644
index 00000000000..3c1816c30fb
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation2.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation3.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation3.png
new file mode 100644
index 00000000000..dbcc95e1ecf
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation3.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/addParameter.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/addParameter.png
new file mode 100644
index 00000000000..41ebe356cb8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/addParameter.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/attributes.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/attributes.gif
new file mode 100644
index 00000000000..d4cb4254d92
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/attributes.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/bottomLeftOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/bottomLeftOverlay.png
new file mode 100644
index 00000000000..a590639ef21
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/bottomLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/bottomMiddleOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/bottomMiddleOverlay.png
new file mode 100644
index 00000000000..aa965d8f304
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/bottomMiddleOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/bottomRightOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/bottomRightOverlay.png
new file mode 100644
index 00000000000..c4aa66c4043
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/bottomRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/customizationLabel.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/customizationLabel.png
new file mode 100644
index 00000000000..e7a492fe7b2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/customizationLabel.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/editor-toc.xml b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/editor-toc.xml
new file mode 100644
index 00000000000..8a6d371a5ee
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/editor-toc.xml
@@ -0,0 +1,14 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="resource/editor.html" label="EMF Facet Customization Editor">
+ <topic href="resource/editor.html" label="Customization of model with EMF Facet"></topic>
+ <topic href="resource/editor.html#Creationof.customfile" label="Creation of .custom file"></topic>
+ <topic href="resource/editor.html#EClassCustomandFacetCustom" label="EClassCustom and FacetCustom">
+ <topic href="resource/editor.html#Creationandbasicedition" label="Creation and basic edition"></topic>
+ <topic href="resource/editor.html#Finetuneedition" label="Fine-tune edition"></topic>
+ </topic>
+ <topic href="resource/editor.html#DerivedTypedElement" label="DerivedTypedElement">
+ <topic href="resource/editor.html#Creationandbasicedition2" label="Creation and basic edition"></topic>
+ <topic href="resource/editor.html#Structuredviews" label="Structured views"></topic>
+ <topic href="resource/editor.html#Finetuneedition2" label="Fine-tune edition"></topic>
+ </topic>
+</toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/editor.html b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/editor.html
new file mode 100644
index 00000000000..197d79c3e30
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/editor.html
@@ -0,0 +1 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/></head><body><h1 id="CustomizationofmodelwithEMFFacet">Customization of model with EMF Facet</h1><ol class="toc" style="list-style: none;"><li><a href="#CustomizationofmodelwithEMFFacet">Customization of model with EMF Facet</a></li><li><a href="#Creationof.customfile">Creation of .custom file</a></li><li><a href="#EClassCustomandFacetCustom">EClassCustom and FacetCustom</a><ol style="list-style: none;"><li><a href="#Creationandbasicedition">Creation and basic edition</a></li><li><a href="#Finetuneedition">Fine-tune edition</a></li></ol></li><li><a href="#DerivedTypedElement">DerivedTypedElement</a><ol style="list-style: none;"><li><a href="#Creationandbasicedition2">Creation and basic edition</a></li><li><a href="#Structuredviews">Structured views</a></li><li><a href="#Finetuneedition2">Fine-tune edition</a></li></ol></li></ol><p>EMF Facet provides a customization component, that can be used to define the appearance of model elements when viewed in an editor or view that supports this customization mechanism.</p><h1 id="Creationof.customfile">Creation of .custom file</h1><p>A customization is defined in a model that conforms to the EMF Facet customization metamodel. This model is saved in a file with the &#171;.custom&#187; file extension. The file can be created via a wizard in Eclipse from “New -&gt; EMF Facet -&gt; Create a customization 0.2” option in menu and will prompt the user for the nsURI and prefix for the customization model. The following screen captures show step by step the creation process :</p><p><img border="0" src="WizardCreation1.png"/><br/>Figure 1 : custom file creation wizard</p><p><img border="0" src="WizardCreation2.png"/><br/>Figure 2 : file name selection</p><p><img border="0" src="WizardCreation2.png"/><br/>Figure 3 : nsURI and prefix specification for the model</p><p>Upon the creation of the customization model file, the editor will open and allow the user to populate the model:</p><p><img border="0" src="EditorWithEmptyFile.png"/><br/>Figure 4 : empty Customization created from the wizard</p><p>Customization is a specific FacetSet acting as the main container for the customization elements. These elements may be customization for<br/>EClass or Facet; each of them containing DerivedTypedElement such as FacetAttribute, FacetReference, and FacetOperation.</p><h1 id="EClassCustomandFacetCustom">EClassCustom and FacetCustom</h1><h2 id="Creationandbasicedition">Creation and basic edition</h2><p>Custom classes can be created when a Customization element is selected, the far right panel displays buttons to ease the creation of such<br/>elements:</p><p><img border="0" src="EClassCustomCreation1.png"/><br/>Figure 5 : creation of an EClassCustom</p><p>The dialog allows specifying generic features for Custom classes and the properties view is always there to fine-tune different features:</p><p><img border="0" src="EClassCustomEdition.png"/><br/>Figure 6 : Edition of an EClassCustom</p><p>In this example, the EClassCustom extends the metaclass from the org.eclipse.emf.facet.examples.library metamodel, the editor will<br/>automatically load every model in which a facet specifies this metamodel, hence the loading of .efacet and .custom files available in the<br/>platform. This allow an easy access of all declared facets bound to an element of the customized metamodel.</p><p>The process is identical for the creation of a FacetCustom:</p><p><img border="0" src="FacetCustomCreation1.png"/><br/>Figure 7 : creation of a FacetCustom</p><h2 id="Finetuneedition">Fine-tune edition</h2><p>If needed, properties view allows the user to have a more advanced control on custom elements:</p><p><img border="0" src="FineTuneEClassCustomization.png"/><br/>Figure 8 : fine-tune edition of an EClassCustom</p><p>Also, applied customization are strongly affected by the order the manager load them up, the editor provides a way to modify this order by<br/>selecting an element and press either the “Up” or “Down” bottom. This results in modifying the index of the selected element in its<br/>containment list.</p><h1 id="DerivedTypedElement">DerivedTypedElement</h1><h2 id="Creationandbasicedition2">Creation and basic edition</h2><p>Custom element, either ECLassCustom or FacetCustom, contains DerivedTypeElement. Those elements can be FacetAttribute, FacetReference or<br/>FacetOperation. The most used lement for Customization is the FacetOperation: each of these FacetOperations overrides the FacetOperation<br/>corresponding to the customizable feature you want to customize: label, font, color, etc…<br/>In order to create a FacetOperation, a FacetCustom or an EClassCustom must be selected:</p><p><img border="0" src="FacetOperationCreation1.png"/><br/>Figure 9 : creation of a FacetOperation</p><p>Finally, the user must provide an implementation for an overriding FacetOperation, by the means of a Query that will return the value of the<br/>customization when this Query is evaluated on a model element that conforms to the extendedFacet. If the query has not been written yet, the<br/>wizard provides an easy wizard to create the Query directly extending one of the Query class available, or the editor will scan the project<br/>and prompt the user to choose among a list of available query classes.</p><p><img border="0" src="FacetOperationSpecifyQuery.png"/><br/>Figure 10 : Creation of a Query for a FacetOperation</p><p>If a FacetOperation is selected, it is possible to add parameters. This parameter is useful for customizing the structural feature<br/>corresponding to a single customized model element:</p><p><img border="0" src="addParameter.png"/><br/>Figure 11 : adding a parameter to a FacetOperation</p><h2 id="Structuredviews">Structured views</h2><p>The left tree is the main navigator of the model in the editor, when a Custom element is selected or any DerivedTypeElement, the right panel<br/>shows the list of all child derivedTypeElements, or brother depending on the nature of the left panel selection. This panel offers a quick<br/>overview of the DerivedTypeElement:</p><p><img border="0" src="RightPaneldescription.png"/><br/>Figure 12 : detailed view of the right panel</p><p>An icon symbolizes the override customization facet, all icons are as follow:</p><ul><li><img border="0" src="attributes.gif"/> means the derivedTypeElement is not a FacetOperation</li><li><img border="0" src="customizationLabel.png"/> stands for “label”</li><li><img border="0" src="fontBold.png"/> stands for “isBold”</li><li><img border="0" src="fontItalic.bmp"/> stands for “isItalic”</li><li><img border="0" src="fontName.png"/> stands for “fontName”</li><li><img border="0" src="fontSize.png"/> stands for “fontSize”</li><li><img border="0" src="fontStrukethrough.bmp"/> stands for “isStrikethrough”</li><li><img border="0" src="fontUnderline.bmp"/> stands for “isUnderlined”</li><li><img border="0" src="imageCustomization.png"/> stands for “image”</li><li><img border="0" src="rgb.png"/> stands for “foreground” or “background”</li><li><img border="0" src="middleLeftOverlay.png"/> stands for “middleLeftOverlay”</li><li><img border="0" src="middleRightOverlay.png"/> stands for “middleRightOverlay”</li><li><img border="0" src="topLeftOverlay.png"/> stands for “topLeftOverlay”</li><li><img border="0" src="topMiddleOverlay.png"/> stands for “topMiddleOverlay”</li><li><img border="0" src="topRightOverlay.png"/> stands for “topRightOverlay”</li><li><img border="0" src="bottomRightOverlay.png"/> stands for “bottomRightOverlay”</li><li><img border="0" src="bottomMiddleOverlay.png"/> stands for “bottomMiddleOverlay”</li><li><img border="0" src="bottomLeftOverlay.png"/> stands for “bottomLeftOverlay”</li></ul><h2 id="Finetuneedition2">Fine-tune edition</h2><p>An advanced control of FacetOperation, and moreover DerivedTypeElement, is available via the properties view:</p><p><img border="0" src="facetOperationWithPropertiesView.png"/><br/>Figure 13 : fine-tune edition of a FacetOperation</p></body></html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/editor.textile b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/editor.textile
new file mode 100644
index 00000000000..17a6cac2723
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/editor.textile
@@ -0,0 +1,174 @@
+h1. Customization of model with EMF Facet
+
+
+
+{toc}
+
+
+
+
+EMF Facet provides a customization component, that can be used to define the appearance of model elements when viewed in an editor or view that supports this customization mechanism.
+
+
+
+h1. Creation of .custom file
+
+
+
+A customization is defined in a model that conforms to the EMF Facet customization metamodel. This model is saved in a file with the ".custom" file extension. The file can be created via a wizard in Eclipse from New -> EMF Facet -> Create a customization 0.2 option in menu and will prompt the user for the nsURI and prefix for the customization model. The following screen captures show step by step the creation process :
+
+
+
+!WizardCreation1.png!
+Figure 1 : custom file creation wizard
+
+
+
+!WizardCreation2.png!
+Figure 2 : file name selection
+
+
+
+!WizardCreation2.png!
+Figure 3 : nsURI and prefix specification for the model
+
+
+
+Upon the creation of the customization model file, the editor will open and allow the user to populate the model:
+
+
+!EditorWithEmptyFile.png!
+Figure 4 : empty Customization created from the wizard
+
+
+
+Customization is a specific FacetSet acting as the main container for the customization elements. These elements may be customization for
+EClass or Facet; each of them containing DerivedTypedElement such as FacetAttribute, FacetReference, and FacetOperation.
+
+
+
+h1. EClassCustom and FacetCustom
+
+
+
+h2. Creation and basic edition
+
+
+
+Custom classes can be created when a Customization element is selected, the far right panel displays buttons to ease the creation of such
+elements:
+
+!EClassCustomCreation1.png!
+Figure 5 : creation of an EClassCustom
+
+
+The dialog allows specifying generic features for Custom classes and the properties view is always there to fine-tune different features:
+
+!EClassCustomEdition.png!
+Figure 6 : Edition of an EClassCustom
+
+
+In this example, the EClassCustom extends the metaclass from the org.eclipse.emf.facet.examples.library metamodel, the editor will
+automatically load every model in which a facet specifies this metamodel, hence the loading of .efacet and .custom files available in the
+platform. This allow an easy access of all declared facets bound to an element of the customized metamodel.
+
+The process is identical for the creation of a FacetCustom:
+
+!FacetCustomCreation1.png!
+Figure 7 : creation of a FacetCustom
+
+
+
+h2. Fine-tune edition
+
+If needed, properties view allows the user to have a more advanced control on custom elements:
+
+!FineTuneEClassCustomization.png!
+Figure 8 : fine-tune edition of an EClassCustom
+
+
+
+Also, applied customization are strongly affected by the order the manager load them up, the editor provides a way to modify this order by
+selecting an element and press either the Up or Down bottom. This results in modifying the index of the selected element in its
+containment list.
+
+
+
+h1. DerivedTypedElement
+
+
+
+h2. Creation and basic edition
+
+
+
+Custom element, either ECLassCustom or FacetCustom, contains DerivedTypeElement. Those elements can be FacetAttribute, FacetReference or
+FacetOperation. The most used lement for Customization is the FacetOperation: each of these FacetOperations overrides the FacetOperation
+corresponding to the customizable feature you want to customize: label, font, color, etc
+In order to create a FacetOperation, a FacetCustom or an EClassCustom must be selected:
+
+!FacetOperationCreation1.png!
+Figure 9 : creation of a FacetOperation
+
+
+
+Finally, the user must provide an implementation for an overriding FacetOperation, by the means of a Query that will return the value of the
+customization when this Query is evaluated on a model element that conforms to the extendedFacet. If the query has not been written yet, the
+wizard provides an easy wizard to create the Query directly extending one of the Query class available, or the editor will scan the project
+and prompt the user to choose among a list of available query classes.
+
+!FacetOperationSpecifyQuery.png!
+Figure 10 : Creation of a Query for a FacetOperation
+
+
+If a FacetOperation is selected, it is possible to add parameters. This parameter is useful for customizing the structural feature
+corresponding to a single customized model element:
+
+
+!addParameter.png!
+Figure 11 : adding a parameter to a FacetOperation
+
+
+
+h2. Structured views
+
+
+
+The left tree is the main navigator of the model in the editor, when a Custom element is selected or any DerivedTypeElement, the right panel
+shows the list of all child derivedTypeElements, or brother depending on the nature of the left panel selection. This panel offers a quick
+overview of the DerivedTypeElement:
+
+!RightPaneldescription.png!
+Figure 12 : detailed view of the right panel
+
+
+An icon symbolizes the override customization facet, all icons are as follow:
+* !attributes.gif! means the derivedTypeElement is not a FacetOperation
+* !customizationLabel.png! stands for label
+* !fontBold.png! stands for isBold
+* !fontItalic.bmp! stands for isItalic
+* !fontName.png! stands for fontName
+* !fontSize.png! stands for fontSize
+* !fontStrukethrough.bmp! stands for isStrikethrough
+* !fontUnderline.bmp! stands for isUnderlined
+* !imageCustomization.png! stands for image
+* !rgb.png! stands for foreground or background
+* !middleLeftOverlay.png! stands for middleLeftOverlay
+* !middleRightOverlay.png! stands for middleRightOverlay
+* !topLeftOverlay.png! stands for topLeftOverlay
+* !topMiddleOverlay.png! stands for topMiddleOverlay
+* !topRightOverlay.png! stands for topRightOverlay
+* !bottomRightOverlay.png! stands for bottomRightOverlay
+* !bottomMiddleOverlay.png! stands for bottomMiddleOverlay
+* !bottomLeftOverlay.png! stands for bottomLeftOverlay
+
+
+
+h2. Fine-tune edition
+
+
+
+An advanced control of FacetOperation, and moreover DerivedTypeElement, is available via the properties view:
+
+!facetOperationWithPropertiesView.png!
+Figure 13 : fine-tune edition of a FacetOperation
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/facetOperationWithPropertiesView.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/facetOperationWithPropertiesView.png
new file mode 100644
index 00000000000..f507fb7f97c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/facetOperationWithPropertiesView.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontBold.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontBold.png
new file mode 100644
index 00000000000..45033eb9b8a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontBold.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontItalic.bmp b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontItalic.bmp
new file mode 100644
index 00000000000..3e8d38653cc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontItalic.bmp
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontName.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontName.png
new file mode 100644
index 00000000000..348dd6641fb
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontName.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontSize.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontSize.png
new file mode 100644
index 00000000000..ba5b44296cc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontSize.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontStrukethrough.bmp b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontStrukethrough.bmp
new file mode 100644
index 00000000000..945988b541e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontStrukethrough.bmp
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontUnderline.bmp b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontUnderline.bmp
new file mode 100644
index 00000000000..5368eb463db
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/fontUnderline.bmp
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/imageCustomization.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/imageCustomization.png
new file mode 100644
index 00000000000..c8fa43a07f5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/imageCustomization.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/middleLeftOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/middleLeftOverlay.png
new file mode 100644
index 00000000000..46158d8fe8b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/middleLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/middleRightOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/middleRightOverlay.png
new file mode 100644
index 00000000000..f73c1ed8a0e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/middleRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/rgb.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/rgb.png
new file mode 100644
index 00000000000..119f9d57ff0
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/rgb.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/topLeftOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/topLeftOverlay.png
new file mode 100644
index 00000000000..2b30f260028
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/topLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/topMiddleOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/topMiddleOverlay.png
new file mode 100644
index 00000000000..0cb45759b3b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/topMiddleOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/topRightOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/topRightOverlay.png
new file mode 100644
index 00000000000..1ea16e56587
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor.doc/resource/topRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/.classpath b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/.classpath
new file mode 100644
index 00000000000..da1049abda9
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src/"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/.project b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/.project
new file mode 100644
index 00000000000..a71564309f1
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.emf.facet.custom.metamodel.editor</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..44217f8c068
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/MANIFEST.MF b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..34a158f33da
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/MANIFEST.MF
@@ -0,0 +1,214 @@
+Manifest-Version: 1.0
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Built-By: hudsonbuild
+Bundle-SymbolicName: org.eclipse.emf.facet.custom.metamodel.editor;sin
+ gleton:=true
+Bundle-Activator: org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation.Activator
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.core.resources;visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.custom.metamodel.edit;visibility:=reexport,
+ org.eclipse.emf.ecore.xmi;visibility:=reexport,
+ org.eclipse.emf.edit.ui;visibility:=reexport,
+ org.eclipse.ui.ide;visibility:=reexport,
+ org.eclipse.ui.forms,
+ org.eclipse.papyrus.emf.facet.util.core,
+ org.eclipse.papyrus.emf.facet.custom.core,
+ org.eclipse.emf.ecore.edit,
+ org.eclipse.emf.facet.efacet.sdk.ui,
+ org.eclipse.papyrus.emf.facet.util.ui,
+ org.eclipse.jface,
+ org.eclipse.emf.facet.custom.sdk.ui,
+ org.eclipse.papyrus.emf.facet.custom.ui,
+ org.eclipse.papyrus.emf.facet.query.java.core,
+ org.eclipse.papyrus.emf.facet.query.java.metamodel,
+ org.eclipse.emf.facet.query.ocl.metamodel
+Bundle-Version: 0.4.0.201308190853
+Bundle-ClassPath: .
+Build-Jdk: 1.6.0_27
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: %providerName
+Bundle-Name: %pluginName
+Archiver-Version: Plexus Archiver
+Created-By: Apache Maven
+Bundle-ManifestVersion: 2
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$4$1.class
+SHA1-Digest: tGOjU+4z3DxdxWdwBs+v8eOKU40=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$3$2.class
+SHA1-Digest: 7v6GXQClx8CBuOkKZiDsHVU6hdY=
+
+Name: icons/full/wizban/NewCustom.gif
+SHA1-Digest: CfAK4I3/f4RWRH687PmoPhy5xjI=
+
+Name: plugin.properties
+SHA1-Digest: fFcgM6YBhoNcfziHLJKe9rRZk5Q=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomModelWizard.class
+SHA1-Digest: zPICwLw1MMdSYMw3Qy77cPTD/iE=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.met
+ amodel.editor/pom.properties
+SHA1-Digest: aaofIniFQcvYh/8YffWqmdAjU6Y=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomActionBarContributor.class
+SHA1-Digest: jUbbHal786bYoEFb+HQ1V04eUMY=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$10.class
+SHA1-Digest: rGP+RAhFdKK1z0i6y6uVSUqRpy8=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomModelWizard$CustomModelWizardInitialObjectCreationPage.class
+SHA1-Digest: JCf9KzP6eqGktQfMgiCHT2Fqpug=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$1MyContentOutlinePage.class
+SHA1-Digest: r6puwT+FcjuGMZ6VtCjrAf5q+YY=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditorPlugin$Implementation.class
+SHA1-Digest: HyoABJYgdiywLgyKeeM6TmOkjiQ=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$11.class
+SHA1-Digest: aCGd0LETYBDgF5HzVOt4Keo5hB4=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.met
+ amodel.editor/pom.xml
+SHA1-Digest: HLvXDSszH515HuZ/i7KF+OpgR7U=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$12.class
+SHA1-Digest: 99WQOldMXPAKEbMMSPGPFyAOyZA=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$13.class
+SHA1-Digest: vMmQuv11+BuuX6wrgjRBuNm9H58=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$14.class
+SHA1-Digest: PwQg16lZjOxlrFSQ1yg6JLBTHcY=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$15.class
+SHA1-Digest: dx4TR5eJT2wFLEWaswxWdLiJTew=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$16.class
+SHA1-Digest: +sM38Zzn9kKnyDWhJrOpTUezTak=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$17.class
+SHA1-Digest: B3+AEZoxZe1p/twgF27G2zEU5BQ=
+
+Name: plugin.xml
+SHA1-Digest: tstUoV2JuOKmJRuK8Cps96TMCNE=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$18.class
+SHA1-Digest: sNMquBqHAaZ/cQOrC+jGYiFVHTM=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomModelWizard$1.class
+SHA1-Digest: NMQWpKENYfFQ57f5MsF9AkCeJVE=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomModelWizard$2.class
+SHA1-Digest: 02SUfq89oKTPJ21ygzg6Rn94wBk=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomModelWizard$CustomModelWizardInitialObjectCreationPage$1.clas
+ s
+SHA1-Digest: aSDZNSxEDYWi7AYEsADZUmGhWdQ=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomActionBarContributor$1.class
+SHA1-Digest: b6NHs6MXxzGTM0v+I9sDZKFXJS8=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomActionBarContributor$2.class
+SHA1-Digest: gGnxPxZBPgAFnI5uHTioSKbL6pc=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$ReverseAdapterFactoryContentProvider.class
+SHA1-Digest: rV5mQHtsCbaGgWDKLQibz8//pJg=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomActionBarContributor$3.class
+SHA1-Digest: 1RMb2Dc/I2QC6ey39qgENxnavtQ=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$3$1ResourceDeltaVisitor.class
+SHA1-Digest: pKEp96kJaaBR2idFYqmI+4dJ4B8=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor.class
+SHA1-Digest: +PcDDo1QQsFQ9CNAzbzc0iAU4zg=
+
+Name: META-INF/eclipse.inf
+SHA1-Digest: 09gN05tobgS/MdtqyTNQhOhB73M=
+
+Name: about.html
+SHA1-Digest: ru0WjokUORxDPBmweIE2eujSA24=
+
+Name: icons/full/obj16/CustomModelFile.gif
+SHA1-Digest: zjQCllhiXDEnFg6c6wdc1isUBw8=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomModelWizard$CustomModelWizardNewFileCreationPage.class
+SHA1-Digest: QSMjUcx0LwI/KAs7x7pbk9DmnjE=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$1.class
+SHA1-Digest: EMGiFg1kQ2AWnUXcwJm+KfN/300=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$2.class
+SHA1-Digest: f0IyTNp0D/D0HogKihbdpFuuyk4=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$3.class
+SHA1-Digest: Ujvl286N57XXS5QAcH9561MpCcI=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$4.class
+SHA1-Digest: FTDIj12FLFYzuYvPZ5/3HwW0Bxk=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$5.class
+SHA1-Digest: sOZlOeMugef1ZliYkrDPVF2CYog=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$6.class
+SHA1-Digest: 5ftPgemKKGrFwHnm4jsXaWXwQSs=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$7.class
+SHA1-Digest: QesY+HjPovGwBqF/KzUWTMhIKL4=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditorPlugin.class
+SHA1-Digest: qr5mdUQRmFnaClrP6+ypvG0fMEk=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$8.class
+SHA1-Digest: vOv9uSo0oKahHMrnTbOygwRC6Dw=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$9.class
+SHA1-Digest: Xdh/nG+cixVM9Zur3JWx0MZ/oiI=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$2$1.class
+SHA1-Digest: uvC60qxgN2C/cO2rdMwejHm0OOs=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$3$1.class
+SHA1-Digest: 7/Z2RI2RDP58/qM5l6Xn1wmDl18=
+
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/eclipse.inf b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/eclipse.inf
new file mode 100644
index 00000000000..92ffed2421c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/eclipse.inf
@@ -0,0 +1,2 @@
+#Processed using Jarprocessor
+pack200.conditioned = true
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.properties b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.properties
new file mode 100644
index 00000000000..2ee308401dc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.properties
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Mon Aug 19 04:57:03 EDT 2013
+version=0.4.0-SNAPSHOT
+groupId=org.eclipse.emft
+artifactId=org.eclipse.emf.facet.custom.metamodel.editor
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.xml b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.xml
new file mode 100644
index 00000000000..76abd6915ff
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.emf.facet.build</artifactId>
+ <groupId>org.eclipse.emft</groupId>
+ <version>0.4.0</version>
+ </parent>
+ <groupId>org.eclipse.emft</groupId>
+ <artifactId>org.eclipse.emf.facet.custom.metamodel.editor</artifactId>
+ <version>0.4.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+</project>
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/about.html b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/about.html
new file mode 100644
index 00000000000..fb3b4b23fce
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/about.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>September 28, 2012</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/build.properties b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/build.properties
new file mode 100644
index 00000000000..a46e5653ab5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/build.properties
@@ -0,0 +1,8 @@
+source.. = src/
+bin.includes = META-INF/,\
+ .,\
+ icons/,\
+ about.html,\
+ plugin.xml,\
+ plugin.properties,\
+ src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/messages.properties
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/Facet.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/Facet.gif
new file mode 100644
index 00000000000..8c67c03cc10
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/Facet.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/error.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/error.gif
new file mode 100644
index 00000000000..9b048d60532
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/error.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/addUiCustom.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/addUiCustom.gif
new file mode 100644
index 00000000000..bc86fbc897e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/addUiCustom.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg.gif
new file mode 100644
index 00000000000..2c62284e92b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg_unidir.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg_unidir.gif
new file mode 100644
index 00000000000..30bf63ea561
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg_unidir.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/attribute_facet.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/attribute_facet.gif
new file mode 100644
index 00000000000..bf0e5bec658
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/attribute_facet.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/attributes.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/attributes.gif
new file mode 100644
index 00000000000..d4cb4254d92
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/attributes.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomLeftOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomLeftOverlay.png
new file mode 100644
index 00000000000..a590639ef21
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomMiddleOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomMiddleOverlay.png
new file mode 100644
index 00000000000..aa965d8f304
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomMiddleOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomRightOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomRightOverlay.png
new file mode 100644
index 00000000000..c4aa66c4043
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/collapseall.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/collapseall.gif
new file mode 100644
index 00000000000..a2d80a9044f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/collapseall.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/common_columns.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/common_columns.gif
new file mode 100644
index 00000000000..f3402d1dc7a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/common_columns.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/container.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/container.gif
new file mode 100644
index 00000000000..7c58ff7523b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/container.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/customizationLabel.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/customizationLabel.png
new file mode 100644
index 00000000000..e7a492fe7b2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/customizationLabel.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/decrease_font_size.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/decrease_font_size.gif
new file mode 100644
index 00000000000..6c10954d4a4
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/decrease_font_size.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/derivation_tree.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/derivation_tree.gif
new file mode 100644
index 00000000000..9653ecc1015
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/derivation_tree.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived.gif
new file mode 100644
index 00000000000..43ab3a6f1c3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived_instances.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived_instances.gif
new file mode 100644
index 00000000000..9224e2b9b69
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived_instances.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/eClass.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/eClass.gif
new file mode 100644
index 00000000000..2b72bc3e5d6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/eClass.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/element_id.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/element_id.gif
new file mode 100644
index 00000000000..38bc0903931
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/element_id.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_attributes.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_attributes.gif
new file mode 100644
index 00000000000..2910be45944
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_attributes.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_links.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_links.gif
new file mode 100644
index 00000000000..4dc1ab33608
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_links.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/feature.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/feature.gif
new file mode 100644
index 00000000000..46be7a1265a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/feature.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontBold.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontBold.png
new file mode 100644
index 00000000000..45033eb9b8a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontBold.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontItalic.bmp b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontItalic.bmp
new file mode 100644
index 00000000000..3e8d38653cc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontItalic.bmp
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontName.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontName.png
new file mode 100644
index 00000000000..348dd6641fb
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontName.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontSize.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontSize.png
new file mode 100644
index 00000000000..ba5b44296cc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontSize.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontStrukethrough.bmp b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontStrukethrough.bmp
new file mode 100644
index 00000000000..945988b541e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontStrukethrough.bmp
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontUnderline.bmp b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontUnderline.bmp
new file mode 100644
index 00000000000..5368eb463db
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontUnderline.bmp
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/full_name.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/full_name.gif
new file mode 100644
index 00000000000..a666ef4f680
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/full_name.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/imageCustomization.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/imageCustomization.png
new file mode 100644
index 00000000000..c8fa43a07f5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/imageCustomization.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/increase_font_size.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/increase_font_size.gif
new file mode 100644
index 00000000000..bc3fee050e4
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/increase_font_size.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/inv_aggreg.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/inv_aggreg.gif
new file mode 100644
index 00000000000..6f1021d4d1c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/inv_aggreg.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link.gif
new file mode 100644
index 00000000000..94c14024075
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_type.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_type.gif
new file mode 100644
index 00000000000..499cbd44704
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_type.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir.gif
new file mode 100644
index 00000000000..c8169bcfbf8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir_facet.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir_facet.gif
new file mode 100644
index 00000000000..143ae199d3e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir_facet.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleLeftOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleLeftOverlay.png
new file mode 100644
index 00000000000..46158d8fe8b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleRightOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleRightOverlay.png
new file mode 100644
index 00000000000..f73c1ed8a0e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/multiplicity.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/multiplicity.gif
new file mode 100644
index 00000000000..c9936db26ce
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/multiplicity.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/non-zero.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/non-zero.gif
new file mode 100644
index 00000000000..bdeb73e385b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/non-zero.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/operation.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/operation.gif
new file mode 100644
index 00000000000..3b7bb90a3e3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/operation.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/opposite_links.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/opposite_links.gif
new file mode 100644
index 00000000000..63520975df7
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/opposite_links.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/ordering.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/ordering.gif
new file mode 100644
index 00000000000..4c768e3d94b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/ordering.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/package.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/package.gif
new file mode 100644
index 00000000000..fd09a326056
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/package.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/predicate.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/predicate.gif
new file mode 100644
index 00000000000..3b98fc65ef6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/predicate.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/range.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/range.gif
new file mode 100644
index 00000000000..2121fcb1199
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/range.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/restore_font_size.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/restore_font_size.gif
new file mode 100644
index 00000000000..cefb5cf9897
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/restore_font_size.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/rgb.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/rgb.png
new file mode 100644
index 00000000000..119f9d57ff0
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/rgb.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort.gif
new file mode 100644
index 00000000000..6311cc00f80
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links.gif
new file mode 100644
index 00000000000..66f63df6a7c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links_by_type.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links_by_type.gif
new file mode 100644
index 00000000000..c1d1190f914
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links_by_type.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_num.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_num.gif
new file mode 100644
index 00000000000..f0d2d304060
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_num.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/topLeftOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/topLeftOverlay.png
new file mode 100644
index 00000000000..2b30f260028
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/topLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/topMiddleOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/topMiddleOverlay.png
new file mode 100644
index 00000000000..0cb45759b3b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/topMiddleOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/topRightOverlay.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/topRightOverlay.png
new file mode 100644
index 00000000000..1ea16e56587
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/topRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/uri.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/uri.gif
new file mode 100644
index 00000000000..fb99bc7183a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/uri.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/view_menu.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/view_menu.gif
new file mode 100644
index 00000000000..a7c49189228
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/view_menu.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/zero.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/zero.gif
new file mode 100644
index 00000000000..22540f70a26
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/ctool16/zero.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/obj16/CustomModelFile.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/obj16/CustomModelFile.gif
new file mode 100644
index 00000000000..8a7eeb2c824
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/obj16/CustomModelFile.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/wizban/NewCustom.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/wizban/NewCustom.gif
new file mode 100644
index 00000000000..eab53a99e8c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/full/wizban/NewCustom.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/logoMoDiscoMini.gif b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/logoMoDiscoMini.gif
new file mode 100644
index 00000000000..19c468b1c61
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/logoMoDiscoMini.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/query.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/query.png
new file mode 100644
index 00000000000..b18d057bfff
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/query.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/shortcut.png b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/shortcut.png
new file mode 100644
index 00000000000..ed506ae70ee
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/icons/shortcut.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/messages.properties b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/messages.properties
new file mode 100644
index 00000000000..e213977eea5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/messages.properties
@@ -0,0 +1,97 @@
+###############################################################################
+# Copyright (c) 2009, 2010 Mia-Software.
+# 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:
+# Nicolas Bros (Mia-Software) - initial API and implementation
+###############################################################################
+CustomizationEditor_add=&Add...
+CustomizationEditor_appliesToSubInstances=Applies to &Sub-Instances
+CustomizationEditor_bold=Bold
+CustomizationEditor_btnOpenElementSelectionDialogText=...
+CustomizationEditor_btnOpenFontDialogText=...
+CustomizationEditor_btnProperties=&Properties
+CustomizationEditor_btnTooltipViewErrors=View errors
+CustomizationEditor_cannotFindMetamodel=Couldn't find metamodel with URI "{0}"
+CustomizationEditor_changeProperties=Change Properties
+CustomizationEditor_collapseLink=Collapse link
+CustomizationEditor_conditions=Conditions :
+CustomizationEditor_conflictingUnsavedChanges=There are unsaved changes that conflict with changes made outside the editor. Do you wish to discard this editor's changes?
+CustomizationEditor_customizationsWillBeDeleted=All the customizations for metaclass "{0}" will be deleted. Are you sure?
+CustomizationEditor_customViewFor=custom view for "{0}" ({1})
+CustomizationEditor_down=&Down
+CustomizationEditor_edit=&Edit...
+CustomizationEditor_editFeatureValue=Edit feature &value...
+CustomizationEditor_error=Error
+CustomizationEditor_errorLoadingResource=Error loading resource. See log for more information.
+CustomizationEditor_fileConflict=File Conflict
+CustomizationEditor_hideMetaclassName=Hide metaclass name
+CustomizationEditor_iconSelection=Icon selection
+CustomizationEditor_invalidSelection=Invalid selection
+CustomizationEditor_italic=Italic
+CustomizationEditor_missingQuery=Couldn't find Query named "{0}" in query set "{1}".
+CustomizationEditor_missingQuerySet=Couldn't find Query Set named "{0}".
+CustomizationEditor_nonExistingQuery=Non-existing Query
+CustomizationEditor_nonExistingQuerySet=Non-existing Query Set
+CustomizationEditor_notFileSelected=You haven't selected a file
+CustomizationEditor_promptCleanCustomizations=Do you want to remove customizations that don't correspond to the new metamodel?
+CustomizationEditor_readonly=READONLY
+CustomizationEditor_remove=&Remove
+CustomizationEditor_removeIrrelevantCustomizations=Remove Irrelevant Customizations
+CustomizationEditor_resetDefaults=Reset Defaults
+CustomizationEditor_sectionName_customizations=Customizations
+CustomizationEditor_sectionName_types=Types
+CustomizationEditor_selectAnIcon=Select an icon:
+CustomizationEditor_strikethrough=Strikethrough
+CustomizationEditor_text=Text
+CustomizationEditor_Title_cleanCustomization=Clean customization
+CustomizationEditor_underlined=Underlined
+CustomizationEditor_unknown=<unknown>
+CustomizationEditor_up=&Up
+CustomizationEditor_visible=Visible
+CustomizationEditor_metaclassVisible=Visible in Types Panel
+CustomizationEditor_youChangedMetamodel=You have changed the metamodel.\n
+CustomizationPropertiesDialog_customizationProperties=Customization Properties
+CustomizationPropertiesDialog_metamodel=Metamodel
+CustomizationPropertiesDialog_metamodelMustBeSelected=A metamodel must be selected
+CustomizationPropertiesDialog_noMetamodelSelected=No metamodel selected
+CustomizationPropertiesDialog_querySets=Query Sets
+CustomizationViewer_backgroundColor=Background Color
+CustomizationViewer_collapseLink=Collapse Link
+CustomizationViewer_defaultValue=<default value>
+CustomizationViewer_feature=Feature
+CustomizationViewer_hideMetaclassName=Hide Metaclass Name
+CustomizationViewer_typeIcon=Type Icon
+CustomizationViewer_isBold=Is Bold
+CustomizationViewer_isItalic=Is Italic
+CustomizationViewer_isStruckthrough=Is Struckthrough
+CustomizationViewer_isUnderlined=Is Underlined
+CustomizationViewer_isVisible=Is Visible
+CustomizationViewer_metaclassVisible=Visible in Types Panel
+CustomizationViewer_label=Label
+CustomizationViewer_instanceIcon=Instance Icon
+CustomizationViewer_overlayIcon=Overlay Icon
+CustomizationViewer_textColor=Text Color
+CustomizationViewer_textFontName=Text Font Name
+CustomizationViewer_value=Value
+ErrorsDialog_diagnosticMessage={0}\nin: {1}\nline: {2} column: {3}
+ErrorsDialog_errors=Errors
+MetaclassViewToolBar_showDerivedLinks=Show Derived Links
+MetaclassViewToolBar_showFullQualifiedNames=Show Full Qualified Names
+MetaclassViewToolBar_showMultiplicity=Show Multiplicity
+MetaclassViewToolBar_sortLinks=Sort Links
+MetaclassViewToolBar_sortLinksByType=Sort Links by Type
+EditFeatureValueDialog_conditionQueryMustBeSelected=A condition query must be selected
+EditFeatureValueDialog_defaultValue=Default value
+EditFeatureValueDialog_editFeatureValue=Edit Feature Value
+EditFeatureValueDialog_featureValue=Feature value
+EditFeatureValueDialog_noConditionQuerySelected=No condition query selected
+EditFeatureValueDialog_noQuerySelected=No query selected
+EditFeatureValueDialog_queryForCondition=Query for condition
+EditFeatureValueDialog_queryMustBeSelected=A query must be selected
+EditFeatureValueDialog_queryValue=Value computed by a query
+EditFeatureValueDialog_staticValue=Static value
+EditFeatureValueDialog_type=Type
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/plugin.properties b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/plugin.properties
new file mode 100644
index 00000000000..05ded8b915f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/plugin.properties
@@ -0,0 +1,150 @@
+# Copyright (c) 2011 Mia-Software.
+#
+# 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:
+# Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+# Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+# Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+
+pluginName = EMF Facet Custom Editor (Incubation)
+providerName = Eclipse Modeling Project
+
+_UI_CustomEditor_menu = &Custom Editor
+
+_UI_CreateChild_menu_item = &New Child
+_UI_CreateSibling_menu_item = N&ew Sibling
+
+_UI_ShowPropertiesView_menu_item = Show &Properties View
+_UI_RefreshViewer_menu_item = &Refresh
+
+_UI_SelectionPage_label = Selection
+_UI_ParentPage_label = Parent
+_UI_ListPage_label = List
+_UI_TreePage_label = Tree
+_UI_TablePage_label = Table
+_UI_TreeWithColumnsPage_label = Tree with Columns
+_UI_ObjectColumn_label = Object
+_UI_SelfColumn_label = Self
+
+_UI_NoObjectSelected = Selected Nothing
+_UI_SingleObjectSelected = Selected Object: {0}
+_UI_MultiObjectSelected = Selected {0} Objects
+
+_UI_OpenEditorError_label = Open Editor
+
+_UI_Wizard_category = Example EMF Model Creation Wizards
+
+_UI_CreateModelError_message = Problems encountered in file "{0}"
+
+_UI_CustomModelWizard_label = Custom Model
+_UI_CustomModelWizard_description = Create a new Custom model
+
+_UI_CustomEditor_label = Custom Model Editor
+
+_UI_CustomEditorFilenameDefaultBase = My
+_UI_CustomEditorFilenameExtensions = custom
+
+_UI_Wizard_label = New
+
+_WARN_FilenameExtension = The file name must end in ''.{0}''
+_WARN_FilenameExtensions = The file name must have one of the following extensions: {0}
+
+_UI_ModelObject = &Model Object
+_UI_XMLEncoding = &XML Encoding
+_UI_XMLEncodingChoices = UTF-8 ASCII UTF-16 UTF-16BE UTF-16LE ISO-8859-1
+_UI_Wizard_initial_object_description = Select a model object to create
+
+_UI_FileConflict_label = File Conflict
+_WARN_FileConflict = There are unsaved changes that conflict with changes made outside the editor. Do you wish to discard this editor's changes?
+
+CustomizationEditor_add=&Add...
+CustomizationEditor_appliesToSubInstances=Applies to &Sub-Instances
+CustomizationEditor_bold=Bold
+CustomizationEditor_btnOpenElementSelectionDialogText=...
+CustomizationEditor_btnOpenFontDialogText=...
+CustomizationEditor_btnProperties=&Properties
+CustomizationEditor_btnTooltipViewErrors=View errors
+CustomizationEditor_cannotFindMetamodel=Couldn't find metamodel with URI "{0}"
+CustomizationEditor_changeProperties=Change Properties
+CustomizationEditor_collapseLink=Collapse link
+CustomizationEditor_conditions=Conditions :
+CustomizationEditor_conflictingUnsavedChanges=There are unsaved changes that conflict with changes made outside the editor. Do you wish to discard this editor's changes?
+CustomizationEditor_customizationsWillBeDeleted=All the customizations for metaclass "{0}" will be deleted. Are you sure?
+CustomizationEditor_customViewFor=custom view for "{0}" ({1})
+CustomizationEditor_down=&Down
+CustomizationEditor_edit=&Edit...
+CustomizationEditor_editFeatureValue=Edit feature &value...
+CustomizationEditor_error=Error
+CustomizationEditor_errorLoadingResource=Error loading resource. See log for more information.
+CustomizationEditor_fileConflict=File Conflict
+CustomizationEditor_hideMetaclassName=Hide metaclass name
+CustomizationEditor_iconSelection=Icon selection
+CustomizationEditor_invalidSelection=Invalid selection
+CustomizationEditor_italic=Italic
+CustomizationEditor_missingQuery=Couldn't find Query named "{0}" in query set "{1}".
+CustomizationEditor_missingQuerySet=Couldn't find Query Set named "{0}".
+CustomizationEditor_nonExistingQuery=Non-existing Query
+CustomizationEditor_nonExistingQuerySet=Non-existing Query Set
+CustomizationEditor_notFileSelected=You haven't selected a file
+CustomizationEditor_promptCleanCustomizations=Do you want to remove customizations that don't correspond to the new metamodel?
+CustomizationEditor_readonly=READONLY
+CustomizationEditor_remove=&Remove
+CustomizationEditor_removeIrrelevantCustomizations=Remove Irrelevant Customizations
+CustomizationEditor_resetDefaults=Reset Defaults
+CustomizationEditor_sectionName_customizations=Customizations
+CustomizationEditor_sectionName_types=Types
+CustomizationEditor_selectAnIcon=Select an icon:
+CustomizationEditor_strikethrough=Strikethrough
+CustomizationEditor_text=Text
+CustomizationEditor_Title_cleanCustomization=Clean customization
+CustomizationEditor_underlined=Underlined
+CustomizationEditor_unknown=<unknown>
+CustomizationEditor_up=&Up
+CustomizationEditor_visible=Visible
+CustomizationEditor_metaclassVisible=Visible in Types Panel
+CustomizationEditor_youChangedMetamodel=You have changed the metamodel.\n
+CustomizationPropertiesDialog_customizationProperties=Customization Properties
+CustomizationPropertiesDialog_metamodel=Metamodel
+CustomizationPropertiesDialog_metamodelMustBeSelected=A metamodel must be selected
+CustomizationPropertiesDialog_noMetamodelSelected=No metamodel selected
+CustomizationPropertiesDialog_querySets=Query Sets
+CustomizationViewer_backgroundColor=Background Color
+CustomizationViewer_collapseLink=Collapse Link
+CustomizationViewer_defaultValue=<default value>
+CustomizationViewer_feature=Feature
+CustomizationViewer_hideMetaclassName=Hide Metaclass Name
+CustomizationViewer_typeIcon=Type Icon
+CustomizationViewer_isBold=Is Bold
+CustomizationViewer_isItalic=Is Italic
+CustomizationViewer_isStruckthrough=Is Struckthrough
+CustomizationViewer_isUnderlined=Is Underlined
+CustomizationViewer_isVisible=Is Visible
+CustomizationViewer_metaclassVisible=Visible in Types Panel
+CustomizationViewer_label=Label
+CustomizationViewer_instanceIcon=Instance Icon
+CustomizationViewer_overlayIcon=Overlay Icon
+CustomizationViewer_textColor=Text Color
+CustomizationViewer_textFontName=Text Font Name
+CustomizationViewer_value=Value
+ErrorsDialog_diagnosticMessage={0}\nin: {1}\nline: {2} column: {3}
+ErrorsDialog_errors=Errors
+MetaclassViewToolBar_showDerivedLinks=Show Derived Links
+MetaclassViewToolBar_showFullQualifiedNames=Show Full Qualified Names
+MetaclassViewToolBar_showMultiplicity=Show Multiplicity
+MetaclassViewToolBar_sortLinks=Sort Links
+MetaclassViewToolBar_sortLinksByType=Sort Links by Type
+EditFeatureValueDialog_conditionQueryMustBeSelected=A condition query must be selected
+EditFeatureValueDialog_defaultValue=Default value
+EditFeatureValueDialog_editFeatureValue=Edit Feature Value
+EditFeatureValueDialog_featureValue=Feature value
+EditFeatureValueDialog_noConditionQuerySelected=No condition query selected
+EditFeatureValueDialog_noQuerySelected=No query selected
+EditFeatureValueDialog_queryForCondition=Query for condition
+EditFeatureValueDialog_queryMustBeSelected=A query must be selected
+EditFeatureValueDialog_queryValue=Value computed by a query
+EditFeatureValueDialog_staticValue=Static value
+EditFeatureValueDialog_type=Type
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/plugin.xml b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/plugin.xml
new file mode 100644
index 00000000000..532f904f394
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/plugin.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ 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:
+ Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.ui.newWizards">
+ <category
+ id="org.eclipse.emf.ecore.Wizard.category.ID"
+ name="%_UI_Wizard_category"/>
+ <wizard
+ id="org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation.CustomModelWizardID"
+ name="%_UI_CustomModelWizard_label"
+ class="org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation.CustomModelWizard"
+ category="org.eclipse.emf.ecore.Wizard.category.ID"
+ icon="icons/full/obj16/CustomModelFile.gif">
+ <description>%_UI_CustomModelWizard_description</description>
+ <selection class="org.eclipse.core.resources.IResource"/>
+ </wizard>
+ </extension>
+
+ <extension point="org.eclipse.ui.editors">
+ <editor
+ id="org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation.CustomEditorID"
+ name="%_UI_CustomEditor_label"
+ icon="icons/full/obj16/CustomModelFile.gif"
+ extensions="custom"
+ class="org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation.CustomEditor"
+ contributorClass="org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation.CustomActionBarContributor">
+ </editor>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Activator.java b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Activator.java
new file mode 100644
index 00000000000..6514e1b2a80
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Activator.java
@@ -0,0 +1,53 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Mia-Software.
+ * 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:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/** The activator class controls the plug-in life cycle */
+public class Activator extends AbstractUIPlugin {
+
+ /** The plug-in ID */
+ public static final String PLUGIN_ID = "org.eclipse.emf.facet.custom.metamodel.editor"; //$NON-NLS-1$
+
+ /** The shared instance */
+ private static Activator plugin;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ // nothing
+ }
+
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ColorProvider.java b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ColorProvider.java
new file mode 100644
index 00000000000..f8ed5741fe2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ColorProvider.java
@@ -0,0 +1,66 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2010 Mia-Software.
+ * 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:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *
+ *******************************************************************************/
+
+package org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import org.eclipse.jface.resource.JFaceColors;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.RGB;
+import org.eclipse.swt.widgets.Display;
+
+public final class ColorProvider {
+
+ private static ColorProvider instance;
+
+ public static ColorProvider getInstance() {
+ if (ColorProvider.instance == null) {
+ ColorProvider.instance = new ColorProvider();
+ }
+ return ColorProvider.instance;
+ }
+
+ /** The color used for elements that are empty or not used */
+ private final Color gray;
+ /** The color used for elements that are not part of the first resource */
+ private final Color externalResourceColor;
+ /** The color used for elements that are not in any resource */
+ private final Color nullResourceColor;
+
+ private ColorProvider() {
+ final Display display = Display.getCurrent();
+
+ final RGB rgbGray = new RGB(128, 128, 128);
+ this.gray = new Color(display, rgbGray);
+
+ final RGB rgbBlue = new RGB(0, 0, 255);
+ this.externalResourceColor = new Color(display, rgbBlue);
+
+ final RGB rgbDarkRed = new RGB(192, 0, 0);
+ this.nullResourceColor = new Color(display, rgbDarkRed);
+ }
+
+ public Color getGray() {
+ return this.gray;
+ }
+
+ public Color getExternalResourceColor() {
+ return this.externalResourceColor;
+ }
+
+ public Color getNullResourceColor() {
+ return this.nullResourceColor;
+ }
+
+ public Color getUnresolvedProxyColor() {
+ return JFaceColors.getErrorText(Display.getCurrent());
+ }
+}
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomActionBarContributor.java b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomActionBarContributor.java
new file mode 100644
index 00000000000..d28c76b9de6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomActionBarContributor.java
@@ -0,0 +1,434 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * 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:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.ui.viewer.IViewerProvider;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+
+import org.eclipse.emf.edit.ui.action.ControlAction;
+import org.eclipse.emf.edit.ui.action.CreateChildAction;
+import org.eclipse.emf.edit.ui.action.CreateSiblingAction;
+import org.eclipse.emf.edit.ui.action.EditingDomainActionBarContributor;
+import org.eclipse.emf.edit.ui.action.LoadResourceAction;
+import org.eclipse.emf.edit.ui.action.ValidateAction;
+
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.action.ActionContributionItem;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.action.IContributionItem;
+import org.eclipse.jface.action.IContributionManager;
+import org.eclipse.jface.action.IMenuListener;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.action.Separator;
+import org.eclipse.jface.action.SubContributionItem;
+
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.Viewer;
+
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.PartInitException;
+
+/**
+ * This is the action bar contributor for the Custom model editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomActionBarContributor
+ extends EditingDomainActionBarContributor
+ implements ISelectionChangedListener {
+ /**
+ * This keeps track of the active editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IEditorPart activeEditorPart;
+
+ /**
+ * This keeps track of the current selection provider.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ISelectionProvider selectionProvider;
+
+ /**
+ * This action opens the Properties view.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IAction showPropertiesViewAction =
+ new Action(CustomEditorPlugin.INSTANCE.getString("_UI_ShowPropertiesView_menu_item")) {
+ @Override
+ public void run() {
+ try {
+ getPage().showView("org.eclipse.ui.views.PropertySheet");
+ }
+ catch (PartInitException exception) {
+ CustomEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+ };
+
+ /**
+ * This action refreshes the viewer of the current editor if the editor
+ * implements {@link org.eclipse.emf.common.ui.viewer.IViewerProvider}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IAction refreshViewerAction =
+ new Action(CustomEditorPlugin.INSTANCE.getString("_UI_RefreshViewer_menu_item")) {
+ @Override
+ public boolean isEnabled() {
+ return activeEditorPart instanceof IViewerProvider;
+ }
+
+ @Override
+ public void run() {
+ if (activeEditorPart instanceof IViewerProvider) {
+ Viewer viewer = ((IViewerProvider)activeEditorPart).getViewer();
+ if (viewer != null) {
+ viewer.refresh();
+ }
+ }
+ }
+ };
+
+ /**
+ * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateChildAction} corresponding to each descriptor
+ * generated for the current selection by the item provider.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<IAction> createChildActions;
+
+ /**
+ * This is the menu manager into which menu contribution items should be added for CreateChild actions.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IMenuManager createChildMenuManager;
+
+ /**
+ * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} corresponding to each descriptor
+ * generated for the current selection by the item provider.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<IAction> createSiblingActions;
+
+ /**
+ * This is the menu manager into which menu contribution items should be added for CreateSibling actions.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IMenuManager createSiblingMenuManager;
+
+ /**
+ * This creates an instance of the contributor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomActionBarContributor() {
+ super(ADDITIONS_LAST_STYLE);
+ loadResourceAction = new LoadResourceAction();
+ validateAction = new ValidateAction();
+ controlAction = new ControlAction();
+ }
+
+ /**
+ * This adds Separators for editor additions to the tool bar.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void contributeToToolBar(IToolBarManager toolBarManager) {
+ toolBarManager.add(new Separator("custom-settings"));
+ toolBarManager.add(new Separator("custom-additions"));
+ }
+
+ /**
+ * This adds to the menu bar a menu and some separators for editor additions,
+ * as well as the sub-menus for object creation items.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void contributeToMenu(IMenuManager menuManager) {
+ super.contributeToMenu(menuManager);
+
+ IMenuManager submenuManager = new MenuManager(CustomEditorPlugin.INSTANCE.getString("_UI_CustomEditor_menu"), "org.eclipse.emf.facet.custom.metamodel.v0_2_0.customMenuID");
+ menuManager.insertAfter("additions", submenuManager);
+ submenuManager.add(new Separator("settings"));
+ submenuManager.add(new Separator("actions"));
+ submenuManager.add(new Separator("additions"));
+ submenuManager.add(new Separator("additions-end"));
+
+ // Prepare for CreateChild item addition or removal.
+ //
+ createChildMenuManager = new MenuManager(CustomEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item"));
+ submenuManager.insertBefore("additions", createChildMenuManager);
+
+ // Prepare for CreateSibling item addition or removal.
+ //
+ createSiblingMenuManager = new MenuManager(CustomEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item"));
+ submenuManager.insertBefore("additions", createSiblingMenuManager);
+
+ // Force an update because Eclipse hides empty menus now.
+ //
+ submenuManager.addMenuListener
+ (new IMenuListener() {
+ public void menuAboutToShow(IMenuManager menuManager) {
+ menuManager.updateAll(true);
+ }
+ });
+
+ addGlobalActions(submenuManager);
+ }
+
+ /**
+ * When the active editor changes, this remembers the change and registers with it as a selection provider.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+// @Override
+// public void setActiveEditor(IEditorPart part) {
+// super.setActiveEditor(part);
+// activeEditorPart = part;
+//
+// // Switch to the new selection provider.
+// //
+// if (selectionProvider != null) {
+// selectionProvider.removeSelectionChangedListener(this);
+// }
+// if (part == null) {
+// selectionProvider = null;
+// }
+// else {
+// selectionProvider = part.getSite().getSelectionProvider();
+// selectionProvider.addSelectionChangedListener(this);
+//
+// // Fake a selection changed event to update the menus.
+// //
+// if (selectionProvider.getSelection() != null) {
+// selectionChanged(new SelectionChangedEvent(selectionProvider, selectionProvider.getSelection()));
+// }
+// }
+// }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionChangedListener},
+ * handling {@link org.eclipse.jface.viewers.SelectionChangedEvent}s by querying for the children and siblings
+ * that can be added to the selected object and updating the menus accordingly.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void selectionChanged(SelectionChangedEvent event) {
+ // Remove any menu items for old selection.
+ //
+ if (createChildMenuManager != null) {
+ depopulateManager(createChildMenuManager, createChildActions);
+ }
+ if (createSiblingMenuManager != null) {
+ depopulateManager(createSiblingMenuManager, createSiblingActions);
+ }
+
+ // Query the new selection for appropriate new child/sibling descriptors
+ //
+ Collection<?> newChildDescriptors = null;
+ Collection<?> newSiblingDescriptors = null;
+
+ ISelection selection = event.getSelection();
+ if (selection instanceof IStructuredSelection && ((IStructuredSelection)selection).size() == 1) {
+ Object object = ((IStructuredSelection)selection).getFirstElement();
+
+ EditingDomain domain = ((IEditingDomainProvider)activeEditorPart).getEditingDomain();
+
+ newChildDescriptors = domain.getNewChildDescriptors(object, null);
+ newSiblingDescriptors = domain.getNewChildDescriptors(null, object);
+ }
+
+ // Generate actions for selection; populate and redraw the menus.
+ //
+ createChildActions = generateCreateChildActions(newChildDescriptors, selection);
+ createSiblingActions = generateCreateSiblingActions(newSiblingDescriptors, selection);
+
+ if (createChildMenuManager != null) {
+ populateManager(createChildMenuManager, createChildActions, null);
+ createChildMenuManager.update(true);
+ }
+ if (createSiblingMenuManager != null) {
+ populateManager(createSiblingMenuManager, createSiblingActions, null);
+ createSiblingMenuManager.update(true);
+ }
+ }
+
+ /**
+ * This generates a {@link org.eclipse.emf.edit.ui.action.CreateChildAction} for each object in <code>descriptors</code>,
+ * and returns the collection of these actions.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<IAction> generateCreateChildActions(Collection<?> descriptors, ISelection selection) {
+ Collection<IAction> actions = new ArrayList<IAction>();
+ if (descriptors != null) {
+ for (Object descriptor : descriptors) {
+ actions.add(new CreateChildAction(activeEditorPart, selection, descriptor));
+ }
+ }
+ return actions;
+ }
+
+ /**
+ * This generates a {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} for each object in <code>descriptors</code>,
+ * and returns the collection of these actions.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<IAction> generateCreateSiblingActions(Collection<?> descriptors, ISelection selection) {
+ Collection<IAction> actions = new ArrayList<IAction>();
+ if (descriptors != null) {
+ for (Object descriptor : descriptors) {
+ actions.add(new CreateSiblingAction(activeEditorPart, selection, descriptor));
+ }
+ }
+ return actions;
+ }
+
+ /**
+ * This populates the specified <code>manager</code> with {@link org.eclipse.jface.action.ActionContributionItem}s
+ * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection,
+ * by inserting them before the specified contribution item <code>contributionID</code>.
+ * If <code>contributionID</code> is <code>null</code>, they are simply added.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void populateManager(IContributionManager manager, Collection<? extends IAction> actions, String contributionID) {
+ if (actions != null) {
+ for (IAction action : actions) {
+ if (contributionID != null) {
+ manager.insertBefore(contributionID, action);
+ }
+ else {
+ manager.add(action);
+ }
+ }
+ }
+ }
+
+ /**
+ * This removes from the specified <code>manager</code> all {@link org.eclipse.jface.action.ActionContributionItem}s
+ * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void depopulateManager(IContributionManager manager, Collection<? extends IAction> actions) {
+ if (actions != null) {
+ IContributionItem[] items = manager.getItems();
+ for (int i = 0; i < items.length; i++) {
+ // Look into SubContributionItems
+ //
+ IContributionItem contributionItem = items[i];
+ while (contributionItem instanceof SubContributionItem) {
+ contributionItem = ((SubContributionItem)contributionItem).getInnerItem();
+ }
+
+ // Delete the ActionContributionItems with matching action.
+ //
+ if (contributionItem instanceof ActionContributionItem) {
+ IAction action = ((ActionContributionItem)contributionItem).getAction();
+ if (actions.contains(action)) {
+ manager.remove(contributionItem);
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * This populates the pop-up menu before it appears.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void menuAboutToShow(IMenuManager menuManager) {
+ super.menuAboutToShow(menuManager);
+ MenuManager submenuManager = null;
+
+ submenuManager = new MenuManager(CustomEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item"));
+ populateManager(submenuManager, createChildActions, null);
+ menuManager.insertBefore("edit", submenuManager);
+
+ submenuManager = new MenuManager(CustomEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item"));
+ populateManager(submenuManager, createSiblingActions, null);
+ menuManager.insertBefore("edit", submenuManager);
+ }
+
+ /**
+ * This inserts global actions before the "additions-end" separator.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected void addGlobalActions(IMenuManager menuManager) {
+ menuManager.insertAfter("additions-end", new Separator("ui-actions"));
+ menuManager.insertAfter("ui-actions", showPropertiesViewAction);
+
+ refreshViewerAction.setEnabled(refreshViewerAction.isEnabled());
+ menuManager.insertAfter("ui-actions", refreshViewerAction);
+
+ super.addGlobalActions(menuManager);
+ }
+
+ /**
+ * This ensures that a delete action will clean up all references to deleted objects.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected boolean removeAllReferencesOnDelete() {
+ return true;
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditor.java b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditor.java
new file mode 100644
index 00000000000..31a45f7e968
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditor.java
@@ -0,0 +1,2019 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * 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:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URISyntaxException;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.EventObject;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.logging.Logger;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IResourceChangeEvent;
+import org.eclipse.core.resources.IResourceChangeListener;
+import org.eclipse.core.resources.IResourceDelta;
+import org.eclipse.core.resources.IResourceDeltaVisitor;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.emf.common.command.BasicCommandStack;
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.command.CommandStack;
+import org.eclipse.emf.common.command.CommandStackListener;
+import org.eclipse.emf.common.ui.MarkerHelper;
+import org.eclipse.emf.common.ui.URIEditorInput;
+import org.eclipse.emf.common.ui.ViewerPane;
+import org.eclipse.emf.common.ui.editor.ProblemEditorPart;
+import org.eclipse.emf.common.ui.viewer.IViewerProvider;
+import org.eclipse.emf.common.util.BasicDiagnostic;
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EValidator;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.edit.command.MoveCommand;
+import org.eclipse.emf.edit.command.RemoveCommand;
+import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.eclipse.emf.edit.provider.AdapterFactoryItemDelegator;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.ReflectiveItemProviderAdapterFactory;
+import org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory;
+import org.eclipse.emf.edit.ui.action.EditingDomainActionBarContributor;
+import org.eclipse.emf.edit.ui.celleditor.AdapterFactoryTreeEditor;
+import org.eclipse.emf.edit.ui.dnd.EditingDomainViewerDropAdapter;
+import org.eclipse.emf.edit.ui.dnd.LocalTransfer;
+import org.eclipse.emf.edit.ui.dnd.ViewerDragAdapter;
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvider;
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
+import org.eclipse.emf.edit.ui.provider.UnwrappingSelectionProvider;
+import org.eclipse.emf.edit.ui.util.EditUIMarkerHelper;
+import org.eclipse.emf.edit.ui.view.ExtendedPropertySheetPage;
+import org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+import org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization;
+import org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.provider.CustomItemProviderAdapterFactory;
+import org.eclipse.emf.facet.custom.sdk.ui.dialog.ICustomizationDialogFactory;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.ExtensibleItemProviderAdapterFactory;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.EFacetItemProviderAdapterFactory;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.query.provider.QueryItemProviderAdapterFactory;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.provider.RuntimeItemProviderAdapterFactory;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.provider.SerializationItemProviderAdapterFactory;
+import org.eclipse.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.jface.action.IMenuListener;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.IStatusLineManager;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.action.Separator;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.dialogs.ProgressMonitorDialog;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITreeSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.StructuredViewer;
+import org.eclipse.jface.viewers.TreeSelection;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.SashForm;
+import org.eclipse.swt.dnd.DND;
+import org.eclipse.swt.dnd.Transfer;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.ui.IActionBars;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IEditorSite;
+import org.eclipse.ui.IFileEditorInput;
+import org.eclipse.ui.IPartListener;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
+import org.eclipse.ui.dialogs.SaveAsDialog;
+import org.eclipse.ui.forms.widgets.ExpandableComposite;
+import org.eclipse.ui.forms.widgets.Form;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+import org.eclipse.ui.forms.widgets.Section;
+import org.eclipse.ui.ide.IGotoMarker;
+import org.eclipse.ui.part.EditorPart;
+import org.eclipse.ui.part.FileEditorInput;
+import org.eclipse.ui.views.contentoutline.ContentOutline;
+import org.eclipse.ui.views.contentoutline.ContentOutlinePage;
+import org.eclipse.ui.views.contentoutline.IContentOutlinePage;
+import org.eclipse.ui.views.properties.IPropertySheetPage;
+import org.eclipse.ui.views.properties.PropertySheet;
+import org.eclipse.ui.views.properties.PropertySheetPage;
+
+
+/**
+ * This is an example of a Custom model editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomEditor
+extends EditorPart
+implements IGotoMarker, ISelectionProvider, IMenuListener, IEditingDomainProvider, IViewerProvider {
+
+ protected Customization mainCustomization;
+
+ protected ComposedAdapterFactory adapterFactory;
+
+ protected CustomViewer customizationViewer;
+
+ /**
+ * Resources that have been changed since last activation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Resource> changedResources = new ArrayList<Resource>();
+
+ /**
+ * Resources that have been saved.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Resource> savedResources = new ArrayList<Resource>();
+
+ /**
+ * Resources that have been removed since last activation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Resource> removedResources = new ArrayList<Resource>();
+
+ /**
+ * This keeps track of the selection of the editor as a whole.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ISelection editorSelection = StructuredSelection.EMPTY;
+
+ /**
+ * This listens to which ever viewer is active.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ISelectionChangedListener selectionChangedListener;
+
+ /**
+ * This keeps track of all the {@link org.eclipse.jface.viewers.ISelectionChangedListener}s that are listening to this editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<ISelectionChangedListener> selectionChangedListeners = new ArrayList<ISelectionChangedListener>();
+
+ /**
+ * Controls whether the problem indication should be updated.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected boolean updateProblemIndication = true;
+
+ /**
+ * This is the content outline page's viewer.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TreeViewer contentOutlineViewer;
+
+ /**
+ * This is a kludge...
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IStatusLineManager contentOutlineStatusLineManager;
+
+ /**
+ * Map to store the diagnostic associated with a resource.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Map<Resource, Diagnostic> resourceToDiagnosticMap = new LinkedHashMap<Resource, Diagnostic>();
+
+ /**
+ * The MarkerHelper is responsible for creating workspace resource markers presented
+ * in Eclipse's Problems View.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected MarkerHelper markerHelper = new EditUIMarkerHelper();
+
+ /**
+ * This is the property sheet page.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected PropertySheetPage propertySheetPage;
+
+ /**
+ * This is the content outline page.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IContentOutlinePage contentOutlinePage;
+
+ protected Composite buttonsPaneComposite;
+
+ private static final int VERTICAL_SPACE_BETWEEN_BUTTON_GROUPS = 30;
+ private static final int VERTICAL_SPACE_BEFORE_FIRST_BUTTON = 10;
+ public static final String ID = "org.eclipse.emf.facet.infra.browser.custom.editor"; //$NON-NLS-1$
+ private static final int MAIN_FORM_MARGIN_WIDTH = 4;
+ private static final int MAIN_FORM_MARGIN_HEIGHT = 6;
+ private static final int LEFT_PANE_SASH_WEIGHT = 400;
+ private static final int RIGHT_PANE_SASH_WEIGHT = 600;
+
+ private TreeViewer selectionViewer;
+ private Button btnEdit;
+ private Button btnRemove;
+ private Button btnUp;
+ private Button btnDown;
+ private Button cbAppliesToSubinstances;
+ private FormToolkit toolkit;
+ private boolean readOnly;
+
+ protected int listenerCounter = 0;
+
+ private Form fForm;
+ private AdapterFactoryEditingDomain editingDomain;
+
+ public CustomEditor() {
+ super();
+ initializeEditingDomain();
+ }
+
+ /**
+ * This sets up the editing domain for the model editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void initializeEditingDomain() {
+ // Create an adapter factory that yields item providers.
+ //
+ adapterFactory = new ComposedAdapterFactory(ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+
+ adapterFactory.addAdapterFactory(new ResourceItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new CustomItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new EFacetItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new SerializationItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new ExtensibleItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new QueryItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new RuntimeItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new ReflectiveItemProviderAdapterFactory());
+
+ // Create the command stack that will notify this editor as commands are executed.
+ //
+ BasicCommandStack commandStack = new BasicCommandStack();
+
+ // Add a listener to set the most recent command's affected objects to be the selection of the viewer with focus.
+ //
+ commandStack.addCommandStackListener
+ (new CommandStackListener() {
+ public void commandStackChanged(final EventObject event) {
+ getSite().getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ firePropertyChange(IEditorPart.PROP_DIRTY);
+ //setDirty(commandStack.isSaveNeeded());
+ // Try to select the affected objects.
+ //
+ Command mostRecentCommand = ((CommandStack)event.getSource()).getMostRecentCommand();
+ if (mostRecentCommand != null) {
+ setSelectionToViewer(mostRecentCommand.getAffectedObjects());
+ }
+ if (propertySheetPage != null && !propertySheetPage.getControl().isDisposed()) {
+ propertySheetPage.refresh();
+ }
+ }
+ });
+ }
+ });
+
+ // Create the editing domain with a special command stack.
+ //
+ editingDomain = new AdapterFactoryEditingDomain(adapterFactory, commandStack, new HashMap<Resource, Boolean>());
+ }
+
+ @Override
+ public void init(final IEditorSite site, final IEditorInput input) throws PartInitException {
+ setSite(site);
+ setInputWithNotify(input);
+ setPartName(input.getName());
+ site.setSelectionProvider(this);
+ site.getPage().addPartListener(partListener);
+ ResourcesPlugin.getWorkspace().addResourceChangeListener(resourceChangeListener, IResourceChangeEvent.POST_CHANGE);
+ }
+
+ /**
+ * This sets the selection into whichever viewer is active.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSelectionToViewer(Collection<?> collection) {
+ final Collection<?> theSelection = collection;
+ // Make sure it's okay.
+ //
+ if (theSelection != null && !theSelection.isEmpty()) {
+ Runnable runnable =
+ new Runnable() {
+ public void run() {
+ // Try to select the items in the current content viewer of the editor.
+ //
+ if (selectionViewer != null) {
+ selectionViewer.setSelection(new StructuredSelection(theSelection.toArray()), true);
+ }
+ }
+ };
+ getSite().getShell().getDisplay().asyncExec(runnable);
+ }
+ }
+
+ @Override
+ public void createPartControl(final Composite parent) {
+ java.net.URI locationURI;
+ String fileName = ""; //$NON-NLS-1$
+ final IEditorInput editorInput = getEditorInput();
+ if (editorInput instanceof IFileEditorInput) {
+ final IFileEditorInput fileEditorInput = (IFileEditorInput) editorInput;
+ try {
+ if (fileEditorInput.getFile().exists()) {
+ locationURI = new java.net.URI(URI.createPlatformResourceURI(
+ fileEditorInput.getFile().getFullPath().toString(), true).toString());
+ } else {
+ locationURI = fileEditorInput.getFile().getLocationURI();
+ }
+ } catch (URISyntaxException e) {
+ locationURI = fileEditorInput.getFile().getLocationURI();
+ }
+ fileName = fileEditorInput.getFile().getName();
+ } else if (editorInput instanceof URIEditorInput) {
+ final URIEditorInput uriEditorInput = (URIEditorInput) editorInput;
+ try {
+ locationURI = new java.net.URI(uriEditorInput.getURI().toString());
+ } catch (final URISyntaxException e) {
+ throw new IllegalArgumentException(e);
+ }
+ fileName = new Path(locationURI.getPath()).lastSegment();
+ } else {
+ throw new IllegalStateException("wrong kind of input: " //$NON-NLS-1$
+ + editorInput.getClass().getName());
+ }
+
+ loadResource(org.eclipse.emf.common.util.URI.createURI(locationURI.toString()));
+ setPartName(fileName);
+
+ createContents(parent);
+
+ this.selectionViewer.addSelectionChangedListener(new ISelectionChangedListener() {
+ public void selectionChanged(final SelectionChangedEvent event) {
+ if(listenerCounter == 0){
+ ISelection eventSelection = event.getSelection();
+ setSelection(eventSelection);
+ final ITreeSelection selection = (ITreeSelection) CustomEditor.this.selectionViewer
+ .getSelection();
+ listenerCounter++;
+ CustomEditor.this.handleSelectionViewerSelectionChanged(selection.getFirstElement());
+ listenerCounter = 0;
+ CustomEditor.this.customizationViewer.getViewer().getControl()
+ .setRedraw(false);
+ CustomEditor.this.customizationViewer.getViewer().expandAll();
+ CustomEditor.this.customizationViewer.getViewer().getControl()
+ .setRedraw(true);
+ }else {
+ listenerCounter = 0;
+ }
+ }
+ });
+
+ setSelection(selectionViewer == null ? StructuredSelection.EMPTY : selectionViewer.getSelection());
+ }
+
+ public void loadResource(URI resourceURI) {
+ Exception exception = null;
+ Resource resource = null;
+ try {
+ // Load the resource through the editing domain.
+ //
+ resource = editingDomain.getResourceSet().getResource(resourceURI, true);
+ }
+ catch (Exception e) {
+ exception = e;
+ resource = editingDomain.getResourceSet().getResource(resourceURI, false);
+ }
+ this.mainCustomization = (Customization) resource.getContents().get(0);
+ }
+
+ private void createContents(final Composite parent) {
+ this.toolkit = new FormToolkit(parent.getDisplay());
+ this.fForm = this.toolkit.createForm(parent);
+ this.toolkit.decorateFormHeading(this.fForm);
+
+ final FillLayout fillLayout = new FillLayout();
+ fillLayout.marginWidth = CustomEditor.MAIN_FORM_MARGIN_WIDTH;
+ fillLayout.marginHeight = CustomEditor.MAIN_FORM_MARGIN_HEIGHT;
+ this.fForm.getBody().setLayout(fillLayout);
+ createBottomPane(this.fForm.getBody());
+ }
+
+ protected IResourceChangeListener resourceChangeListener =
+ new IResourceChangeListener() {
+
+ public void resourceChanged(IResourceChangeEvent event) {
+ IResourceDelta delta = event.getDelta();
+ try {
+ class ResourceDeltaVisitor implements IResourceDeltaVisitor {
+ protected ResourceSet resourceSet = editingDomain.getResourceSet();
+ protected Collection<Resource> changedResources = new ArrayList<Resource>();
+ protected Collection<Resource> removedResources = new ArrayList<Resource>();
+
+ public boolean visit(IResourceDelta delta) {
+ if (delta.getResource().getType() == IResource.FILE) {
+ if (delta.getKind() == IResourceDelta.REMOVED ||
+ delta.getKind() == IResourceDelta.CHANGED && delta.getFlags() != IResourceDelta.MARKERS) {
+ Resource resource = resourceSet.getResource(URI.createPlatformResourceURI(delta.getFullPath().toString(), true), false);
+ if (resource != null) {
+ if (delta.getKind() == IResourceDelta.REMOVED) {
+ removedResources.add(resource);
+ }
+ else if (!savedResources.remove(resource)) {
+ changedResources.add(resource);
+ }
+ }
+ }
+ }
+
+ return true;
+ }
+
+ public Collection<Resource> getChangedResources() {
+ return changedResources;
+ }
+
+ public Collection<Resource> getRemovedResources() {
+ return removedResources;
+ }
+ }
+
+ final ResourceDeltaVisitor visitor = new ResourceDeltaVisitor();
+ delta.accept(visitor);
+
+ if (!visitor.getRemovedResources().isEmpty()) {
+ getSite().getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ removedResources.addAll(visitor.getRemovedResources());
+ if (!isDirty()) {
+ getSite().getPage().closeEditor(CustomEditor.this, false);
+ }
+ }
+ });
+ }
+
+ if (!visitor.getChangedResources().isEmpty()) {
+ getSite().getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ changedResources.addAll(visitor.getChangedResources());
+ if (getSite().getPage().getActiveEditor() == CustomEditor.this) {
+ handleActivate();
+ }
+ }
+ });
+ }
+ }
+ catch (CoreException exception) {
+ CustomEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+ };
+
+ private Composite rightPaneComposite;
+
+ private Composite createBottomPane(final Composite parent) {
+ final SashForm sashForm = new FormStyleSashForm(parent, SWT.HORIZONTAL, this.toolkit) {
+ @Override
+ protected void createContents() {
+ createLeftPane(this);
+ createRightPane(this);
+ }
+ };
+
+ sashForm.setWeights(new int[] { CustomEditor.LEFT_PANE_SASH_WEIGHT,
+ CustomEditor.RIGHT_PANE_SASH_WEIGHT
+ });
+ sashForm.setSashWidth(5);
+
+ return sashForm;
+ }
+
+ private void createLeftPane(final Composite parent) {
+
+ ViewerPane viewerPane =
+ new ViewerPane(getSite().getPage(), CustomEditor.this) {
+ @Override
+ public Viewer createViewer(Composite composite) {
+ Tree tree = new Tree(composite, SWT.MULTI);
+ TreeViewer newTreeViewer = new TreeViewer(tree);
+ return newTreeViewer;
+ }
+ };
+ viewerPane.createControl(parent);
+
+ selectionViewer = (TreeViewer)viewerPane.getViewer();
+ selectionViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+
+ selectionViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+ selectionViewer.setInput(editingDomain.getResourceSet());
+ selectionViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
+ viewerPane.setTitle(editingDomain.getResourceSet());
+
+ new AdapterFactoryTreeEditor(selectionViewer.getTree(), adapterFactory);
+
+ createContextMenuFor(selectionViewer);
+ }
+
+ /** Right pane : treeviewer + fixed buttons pane */
+
+ private Composite createRightPane(final Composite parent) {
+ final Section section = this.toolkit.createSection(parent, ExpandableComposite.TITLE_BAR
+ | ExpandableComposite.EXPANDED);
+
+ this.rightPaneComposite = this.toolkit.createComposite(section, SWT.NONE);
+ section.setClient(rightPaneComposite);
+
+ final GridLayout gridLayout = new GridLayout(2, false);
+ gridLayout.marginHeight = 0;
+ gridLayout.marginWidth = 0;
+ rightPaneComposite.setLayout(gridLayout);
+
+ // tree + bottom options
+ final Composite middle = new Composite(rightPaneComposite, SWT.NONE);
+ final GridLayout middleLayout = new GridLayout();
+ middleLayout.marginHeight = 0;
+ middleLayout.marginWidth = 0;
+ middle.setLayout(middleLayout);
+ middle.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ this.customizationViewer = new CustomViewer(middle);
+ this.customizationViewer.getViewer().getControl()
+ .setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ final Composite optionsPane = this.toolkit.createComposite(middle);
+ optionsPane.setLayout(new GridLayout());
+ optionsPane.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
+
+ this.customizationViewer.addSelectionChangedListener(new ISelectionChangedListener() {
+ public void selectionChanged(final SelectionChangedEvent event) {
+ if(listenerCounter == 0){
+ ISelection eventSelection = event.getSelection();
+ setSelection(eventSelection);
+ final ITreeSelection selection = (ITreeSelection) CustomEditor.this.customizationViewer
+ .getSelection();
+ CustomEditor.this.handleCustomzizationViewerSelectionChanged(selection.getFirstElement());
+ listenerCounter++;
+ }else{
+ listenerCounter = 0;
+ }
+ }
+ });
+
+ if (this.readOnly) {
+ this.cbAppliesToSubinstances.setEnabled(false);
+ }
+
+ final GridData customizationViewerGridData = new GridData();
+ customizationViewerGridData.grabExcessHorizontalSpace = true;
+ customizationViewerGridData.grabExcessVerticalSpace = true;
+ customizationViewerGridData.horizontalAlignment = SWT.FILL;
+ customizationViewerGridData.verticalAlignment = SWT.FILL;
+ this.customizationViewer.getViewer().getControl()
+ .setLayoutData(customizationViewerGridData);
+
+ if (!this.readOnly) {
+ createButtonsPane(rightPaneComposite);
+ }
+
+
+ return rightPaneComposite;
+ }
+
+ private void setInputInCustomizationTreeviewer(Facet facet){
+ List<DerivedTypedElement> inputs = new ArrayList<DerivedTypedElement>();
+ inputs.addAll(facet.getFacetOperations());
+ EList<EStructuralFeature> facetElements = facet.getFacetElements();
+ for (EStructuralFeature eStructuralFeature : facetElements) {
+ if(eStructuralFeature instanceof DerivedTypedElement){
+ inputs.add((DerivedTypedElement) eStructuralFeature);
+ }
+ }
+ this.customizationViewer.setInput(inputs);
+ }
+
+ private void handleSelectionViewerSelectionChanged(final Object selectedElement) {
+ if (selectedElement instanceof EClassCustomization || selectedElement instanceof FacetCustomization) {
+ final Facet facet = (Facet) selectedElement;
+
+
+ setInputInCustomizationTreeviewer(facet);
+ buttonsPaneComposite.dispose();
+ createButtonsPaneWhenFacetIsSelected(rightPaneComposite);
+ rightPaneComposite.layout();
+ }else if(selectedElement instanceof Customization){
+ buttonsPaneComposite.dispose();
+ createButtonsPaneWhenCustomizationIsSelected(rightPaneComposite);
+ rightPaneComposite.layout();
+ }
+ else if(selectedElement instanceof DerivedTypedElement){
+ buttonsPaneComposite.dispose();
+ createButtonsPaneWhenDerivedIsSelected(rightPaneComposite);
+ rightPaneComposite.layout();
+
+
+ //Update customViewer input
+ DerivedTypedElement derivedTypeElement = (DerivedTypedElement)selectedElement;
+ Facet facet = (Facet)derivedTypeElement.eContainer();
+ List<DerivedTypedElement> inputs = new ArrayList<DerivedTypedElement>();
+ inputs.addAll(facet.getFacetOperations());
+ EList<EStructuralFeature> facetElements = facet.getFacetElements();
+ for (EStructuralFeature eStructuralFeature : facetElements) {
+ if(eStructuralFeature instanceof DerivedTypedElement){
+ inputs.add((DerivedTypedElement) eStructuralFeature);
+ }
+ }
+ this.customizationViewer.setInput(inputs);
+ this.customizationViewer.getViewer().setSelection(getSelection(), true);
+
+
+ }
+ }
+
+ private void handleCustomzizationViewerSelectionChanged(final Object selectedElement) {
+ setSelection(this.customizationViewer.getViewer().getSelection());
+
+ if (selectedElement instanceof FacetOperation|| selectedElement instanceof FacetElement) {
+ buttonsPaneComposite.dispose();
+ createButtonsPaneWhenDerivedIsSelected(rightPaneComposite);
+ rightPaneComposite.layout();
+ }
+ }
+
+ private void btnEditClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if(selectedElement instanceof TreeSelection){
+ final Object selectedObject = ((TreeSelection)selectedElement).getFirstElement();
+ if(selectedObject != null){
+ if (selectedObject instanceof Facet) {
+ IFacetDialogFactory.INSTANCE.openEditFacetDialog();
+ }else if(selectedObject instanceof FacetAttribute){
+ IFacetDialogFactory.INSTANCE.openEditFacetAttributeDialog();
+ }else if(selectedObject instanceof FacetOperation){
+ IFacetDialogFactory.INSTANCE.openEditFacetOperationDialog();
+ }else if(selectedObject instanceof FacetReference){
+ IFacetDialogFactory.INSTANCE.openEditFacetReferenceDialog();
+ }else if(selectedObject instanceof DerivedTypedElement){
+ IFacetDialogFactory.INSTANCE.openEditFacetOperationParameterDialog();
+ }else if(selectedObject instanceof Customization){
+ ICustomizationDialogFactory.DEFAULT.openAddCustomizationPropertyDialog(getSite().getShell().getDisplay(), editingDomain);
+ }
+ }
+ }
+ }
+
+ @Override
+ public void doSave(final IProgressMonitor monitor) {
+ // Save only resources that have actually changed.
+ //
+ final Map<Object, Object> saveOptions = new HashMap<Object, Object>();
+ saveOptions.put(Resource.OPTION_SAVE_ONLY_IF_CHANGED, Resource.OPTION_SAVE_ONLY_IF_CHANGED_MEMORY_BUFFER);
+
+ // Do the work within an operation because this is a long running activity that modifies the workbench.
+ //
+ WorkspaceModifyOperation operation =
+ new WorkspaceModifyOperation() {
+ // This is the method that gets invoked when the operation runs.
+ //
+ @Override
+ public void execute(IProgressMonitor monitor) {
+ // Save the resources to the file system.
+ //
+ boolean first = true;
+ for (Resource resource : editingDomain.getResourceSet().getResources()) {
+ if ((first || !resource.getContents().isEmpty() || isPersisted(resource)) && !editingDomain.isReadOnly(resource)) {
+ try {
+ long timeStamp = resource.getTimeStamp();
+ resource.save(saveOptions);
+ if (resource.getTimeStamp() != timeStamp) {
+ savedResources.add(resource);
+ }
+ }
+ catch (Exception exception) {
+ resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
+ }
+ first = false;
+ }
+ }
+ }
+ };
+
+ updateProblemIndication = false;
+ try {
+ // This runs the options, and shows progress.
+ //
+ new ProgressMonitorDialog(getSite().getShell()).run(true, false, operation);
+
+ // Refresh the necessary state.
+ //
+ ((BasicCommandStack)editingDomain.getCommandStack()).saveIsDone();
+ firePropertyChange(IEditorPart.PROP_DIRTY);
+ }
+ catch (Exception exception) {
+ // Something went wrong that shouldn't.
+ //
+ CustomEditorPlugin.INSTANCE.log(exception);
+ }
+ updateProblemIndication = true;
+ updateProblemIndication();
+ }
+
+ /**
+ * This returns whether something has been persisted to the URI of the specified resource.
+ * The implementation uses the URI converter from the editor's resource set to try to open an input stream.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected boolean isPersisted(Resource resource) {
+ boolean result = false;
+ try {
+ InputStream stream = editingDomain.getResourceSet().getURIConverter().createInputStream(resource.getURI());
+ if (stream != null) {
+ result = true;
+ stream.close();
+ }
+ }
+ catch (IOException e) {
+ // Ignore
+ }
+ return result;
+ }
+
+ /**
+ * This accesses a cached version of the content outliner.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IContentOutlinePage getContentOutlinePage() {
+ if (contentOutlinePage == null) {
+ // The content outline is just a tree.
+ //
+ class MyContentOutlinePage extends ContentOutlinePage {
+ @Override
+ public void createControl(Composite parent) {
+ super.createControl(parent);
+ contentOutlineViewer = getTreeViewer();
+ contentOutlineViewer.addSelectionChangedListener(this);
+
+ // Set up the tree viewer.
+ //
+ contentOutlineViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+ contentOutlineViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+ contentOutlineViewer.setInput(editingDomain.getResourceSet());
+
+ // Make sure our popups work.
+ //
+ createContextMenuFor(contentOutlineViewer);
+
+ if (!editingDomain.getResourceSet().getResources().isEmpty()) {
+ // Select the root object in the view.
+ //
+ contentOutlineViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
+ }
+ }
+
+ @Override
+ public void makeContributions(IMenuManager menuManager, IToolBarManager toolBarManager, IStatusLineManager statusLineManager) {
+ super.makeContributions(menuManager, toolBarManager, statusLineManager);
+ contentOutlineStatusLineManager = statusLineManager;
+ }
+
+ @Override
+ public void setActionBars(IActionBars actionBars) {
+ super.setActionBars(actionBars);
+ getActionBarContributor().shareGlobalActions(this, actionBars);
+ }
+ }
+
+ contentOutlinePage = new MyContentOutlinePage();
+
+ // Listen to selection so that we can handle it is a special way.
+ //
+ contentOutlinePage.addSelectionChangedListener
+ (new ISelectionChangedListener() {
+ // This ensures that we handle selections correctly.
+ //
+ public void selectionChanged(SelectionChangedEvent event) {
+ handleContentOutlineSelection(event.getSelection());
+ }
+ });
+ }
+
+ return contentOutlinePage;
+ }
+
+ /**
+ * This accesses a cached version of the property sheet.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IPropertySheetPage getPropertySheetPage() {
+ if (propertySheetPage == null) {
+ propertySheetPage =
+ new ExtendedPropertySheetPage(editingDomain) {
+ @Override
+ public void setSelectionToViewer(List<?> selection) {
+ CustomEditor.this.setSelectionToViewer(selection);
+ CustomEditor.this.setFocus();
+ }
+
+ @Override
+ public void setActionBars(IActionBars actionBars) {
+ super.setActionBars(actionBars);
+ getActionBarContributor().shareGlobalActions(this, actionBars);
+ }
+ };
+ propertySheetPage.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory));
+ }
+
+ return propertySheetPage;
+ }
+
+ /**
+ * This is how the framework determines which interfaces we implement.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("rawtypes")
+ @Override
+ public Object getAdapter(Class key) {
+ if (key.equals(IContentOutlinePage.class)) {
+ return showOutlineView() ? getContentOutlinePage() : null;
+ }
+ else if (key.equals(IPropertySheetPage.class)) {
+ return getPropertySheetPage();
+ }
+ else if (key.equals(IGotoMarker.class)) {
+ return this;
+ }
+ else {
+ return super.getAdapter(key);
+ }
+ }
+
+ /**
+ * Returns whether the outline view should be presented to the user.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected boolean showOutlineView() {
+ return true;
+ }
+
+ /**
+ * This deals with how we want selection in the outliner to affect the other views.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void handleContentOutlineSelection(ISelection selection) {
+ if (!selection.isEmpty() && selection instanceof IStructuredSelection) {
+ Iterator<?> selectedElements = ((IStructuredSelection)selection).iterator();
+ if (selectedElements.hasNext()) {
+ // Get the first selected element.
+ //
+ Object selectedElement = selectedElements.next();
+
+ // If it's the selection viewer, then we want it to select the same selection as this selection.
+ //
+ ArrayList<Object> selectionList = new ArrayList<Object>();
+ selectionList.add(selectedElement);
+ while (selectedElements.hasNext()) {
+ selectionList.add(selectedElements.next());
+ }
+
+ // Set the selection to the widget.
+ //
+ selectionViewer.setSelection(new StructuredSelection(selectionList));
+
+ }
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void doSaveAs(URI uri, IEditorInput editorInput) {
+ (editingDomain.getResourceSet().getResources().get(0)).setURI(uri);
+ setInputWithNotify(editorInput);
+ setPartName(editorInput.getName());
+ IProgressMonitor progressMonitor =
+ getActionBars().getStatusLineManager() != null ?
+ getActionBars().getStatusLineManager().getProgressMonitor() :
+ new NullProgressMonitor();
+ doSave(progressMonitor);
+ }
+ //
+ /**
+ * This is for implementing {@link IEditorPart} and simply tests the command stack.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isDirty() {
+ return ((BasicCommandStack)editingDomain.getCommandStack()).isSaveNeeded();
+ }
+
+ @Override
+ public boolean isSaveAsAllowed() {
+ return false;
+ }
+ //
+ @Override
+ public void setFocus() {
+ // nothing
+ }
+
+ @Override
+ public void dispose() {
+ updateProblemIndication = false;
+
+ ResourcesPlugin.getWorkspace().removeResourceChangeListener(resourceChangeListener);
+
+ getSite().getPage().removePartListener(partListener);
+
+ adapterFactory.dispose();
+
+ if (getActionBarContributor().getActiveEditor() == this) {
+ getActionBarContributor().setActiveEditor(null);
+ }
+
+ if (propertySheetPage != null) {
+ propertySheetPage.dispose();
+ }
+
+ if (contentOutlinePage != null) {
+ contentOutlinePage.dispose();
+ }
+
+ super.dispose();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void gotoMarker(IMarker marker) {
+ try {
+ if (marker.getType().equals(EValidator.MARKER)) {
+ String uriAttribute = marker.getAttribute(EValidator.URI_ATTRIBUTE, null);
+ if (uriAttribute != null) {
+ URI uri = URI.createURI(uriAttribute);
+ EObject eObject = editingDomain.getResourceSet().getEObject(uri, true);
+ if (eObject != null) {
+ setSelectionToViewer(Collections.singleton(editingDomain.getWrapper(eObject)));
+ }
+ }
+ }
+ }
+ catch (CoreException exception) {
+ CustomEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+ //
+ private final IPartListener partListener =
+ new IPartListener() {
+ public void partActivated(IWorkbenchPart p) {
+ if (p instanceof ContentOutline) {
+ if (((ContentOutline)p).getCurrentPage() == contentOutlinePage) {
+ getActionBarContributor().setActiveEditor(CustomEditor.this);
+
+ if (selectionChangedListener == null) {
+ // Create the listener on demand.
+ //
+ selectionChangedListener =
+ new ISelectionChangedListener() {
+ // This just notifies those things that are affected by the section.
+ //
+ public void selectionChanged(SelectionChangedEvent selectionChangedEvent) {
+ setSelection(selectionChangedEvent.getSelection());
+ }
+ };
+ }
+ setSelection(selectionViewer == null ? StructuredSelection.EMPTY : selectionViewer.getSelection());
+ }
+ }
+ else if (p instanceof PropertySheet) {
+ if (((PropertySheet)p).getCurrentPage() == propertySheetPage) {
+ getActionBarContributor().setActiveEditor(CustomEditor.this);
+ handleActivate();
+ }
+ }
+ else if (p == CustomEditor.this) {
+ handleActivate();
+ if (selectionChangedListener == null) {
+ // Create the listener on demand.
+ //
+ selectionChangedListener =
+ new ISelectionChangedListener() {
+ // This just notifies those things that are affected by the section.
+ //
+ public void selectionChanged(SelectionChangedEvent selectionChangedEvent) {
+ setSelection(selectionChangedEvent.getSelection());
+ }
+ };
+ }
+ selectionViewer.addSelectionChangedListener(selectionChangedListener);
+ setSelection(selectionViewer.getSelection());
+ }
+ }
+ public void partBroughtToTop(IWorkbenchPart p) {
+ // Ignore.
+ }
+ public void partClosed(IWorkbenchPart p) {
+ // Ignore.
+ }
+ public void partDeactivated(IWorkbenchPart p) {
+ // Ignore.
+ }
+ public void partOpened(IWorkbenchPart p) {
+ // Ignore.
+ }
+ };
+
+ private Button btnAddFacetSet;
+
+ private Button btnAddFacet;
+
+ private Button btnAddEClassCustom;
+
+ private Button btnAddFacetCustom;
+
+ private Button btnAddFacetAttr;
+
+ private Button btnAddFacetRef;
+
+ private Button btnAddFacetOp;
+
+ private Button btnAddFacetParam;
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to return this editor's overall selection.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ISelection getSelection() {
+ return editorSelection;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EditingDomainActionBarContributor getActionBarContributor() {
+ return (EditingDomainActionBarContributor)getEditorSite().getActionBarContributor();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IActionBars getActionBars() {
+ return getActionBarContributor().getActionBars();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStatusLineManager(ISelection selection) {
+ IStatusLineManager statusLineManager = selectionViewer != null && selectionViewer == contentOutlineViewer ?
+ contentOutlineStatusLineManager : getActionBars().getStatusLineManager();
+
+ if (statusLineManager != null) {
+ if (selection instanceof IStructuredSelection) {
+ Collection<?> collection = ((IStructuredSelection)selection).toList();
+ switch (collection.size()) {
+ case 0: {
+ statusLineManager.setMessage(getString("_UI_NoObjectSelected"));
+ break;
+ }
+ case 1: {
+ String text = new AdapterFactoryItemDelegator(adapterFactory).getText(collection.iterator().next());
+ statusLineManager.setMessage(getString("_UI_SingleObjectSelected", text));
+ break;
+ }
+ default: {
+ statusLineManager.setMessage(getString("_UI_MultiObjectSelected", Integer.toString(collection.size())));
+ break;
+ }
+ }
+ }
+ else {
+ statusLineManager.setMessage("");
+ }
+ }
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to set this editor's overall selection.
+ * Calling this result will notify the listeners.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSelection(ISelection selection) {
+ editorSelection = selection;
+
+ for (ISelectionChangedListener listener : selectionChangedListeners) {
+ listener.selectionChanged(new SelectionChangedEvent(this, selection));
+ }
+ setStatusLineManager(selection);
+ }
+
+ /**
+ * Returns a diagnostic describing the errors and warnings listed in the resource
+ * and the specified exception (if any).
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Diagnostic analyzeResourceProblems(Resource resource, Exception exception) {
+ if (!resource.getErrors().isEmpty() || !resource.getWarnings().isEmpty()) {
+ BasicDiagnostic basicDiagnostic =
+ new BasicDiagnostic
+ (Diagnostic.ERROR,
+ "org.eclipse.emf.facet.custom.metamodel.editor",
+ 0,
+ getString("_UI_CreateModelError_message", resource.getURI()),
+ new Object [] { exception == null ? (Object)resource : exception });
+ basicDiagnostic.merge(EcoreUtil.computeDiagnostic(resource, true));
+ return basicDiagnostic;
+ }
+ else if (exception != null) {
+ return
+ new BasicDiagnostic
+ (Diagnostic.ERROR,
+ "org.eclipse.emf.facet.custom.metamodel.editor",
+ 0,
+ getString("_UI_CreateModelError_message", resource.getURI()),
+ new Object[] { exception });
+ }
+ else {
+ return Diagnostic.OK_INSTANCE;
+ }
+ }
+
+ /**
+ * Handles activation of the editor or it's associated views.
+ */
+ protected void handleActivate() {
+ // Recompute the read only state.
+ //
+ if (editingDomain.getResourceToReadOnlyMap() != null) {
+ editingDomain.getResourceToReadOnlyMap().clear();
+
+ // Refresh any actions that may become enabled or disabled.
+ //
+ setSelection(getSelection());
+ }
+
+ if (!removedResources.isEmpty()) {
+ if (handleDirtyConflict()) {
+ getSite().getPage().closeEditor(CustomEditor.this, false);
+ }
+ else {
+ removedResources.clear();
+ changedResources.clear();
+ savedResources.clear();
+ }
+ }
+ else if (!changedResources.isEmpty()) {
+ changedResources.removeAll(savedResources);
+ handleChangedResources();
+ changedResources.clear();
+ savedResources.clear();
+ }
+ }
+
+ /** Shows a dialog that asks if conflicting changes should be discarded. */
+ protected boolean handleDirtyConflict() {
+ return MessageDialog.openQuestion(getSite().getShell(),
+ "CustomEditor_fileConflict",
+ "CustomEditor_conflictingUnsavedChanges");
+ }
+
+ /**
+ * Updates the problems indication with the information described in the specified diagnostic.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void updateProblemIndication() {
+ if (updateProblemIndication) {
+ BasicDiagnostic diagnostic =
+ new BasicDiagnostic
+ (Diagnostic.OK,
+ "org.eclipse.emf.facet.custom.metamodel.editor",
+ 0,
+ null,
+ new Object [] { editingDomain.getResourceSet() });
+ for (Diagnostic childDiagnostic : resourceToDiagnosticMap.values()) {
+ if (childDiagnostic.getSeverity() != Diagnostic.OK) {
+ diagnostic.add(childDiagnostic);
+ }
+ }
+
+ if (diagnostic.getSeverity() != Diagnostic.OK) {
+ ProblemEditorPart problemEditorPart = new ProblemEditorPart();
+ problemEditorPart.setDiagnostic(diagnostic);
+ problemEditorPart.setMarkerHelper(markerHelper);
+ }
+
+ if (markerHelper.hasMarkers(editingDomain.getResourceSet())) {
+ markerHelper.deleteMarkers(editingDomain.getResourceSet());
+ if (diagnostic.getSeverity() != Diagnostic.OK) {
+ try {
+ markerHelper.createMarkers(diagnostic);
+ }
+ catch (CoreException exception) {
+ CustomEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+ }
+ }
+ }
+
+ /** Handles what to do with changed resources on activation. */
+ protected void handleChangedResources() {
+ if (!changedResources.isEmpty() && (!isDirty() || handleDirtyConflict())) {
+ if (isDirty()) {
+ changedResources.addAll(editingDomain.getResourceSet().getResources());
+ }
+ editingDomain.getCommandStack().flush();
+
+ updateProblemIndication = false;
+ for (Resource resource : changedResources) {
+ if (resource.isLoaded()) {
+ resource.unload();
+ try {
+ resource.load(Collections.EMPTY_MAP);
+ }
+ catch (IOException exception) {
+ if (!resourceToDiagnosticMap.containsKey(resource)) {
+ resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
+ }
+ }
+ }
+ }
+
+ if (AdapterFactoryEditingDomain.isStale(editorSelection)) {
+ setSelection(StructuredSelection.EMPTY);
+ }
+
+ updateProblemIndication = true;
+ updateProblemIndication();
+ }
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void addSelectionChangedListener(ISelectionChangedListener listener) {
+ selectionChangedListeners.add(listener);
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void removeSelectionChangedListener(ISelectionChangedListener listener) {
+ selectionChangedListeners.remove(listener);
+ }
+
+ /**
+ * This looks up a string in the plugin's plugin.properties file.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static String getString(String key) {
+ return CustomEditorPlugin.INSTANCE.getString(key);
+ }
+
+ /**
+ * This looks up a string in plugin.properties, making a substitution.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static String getString(String key, Object s1) {
+ return CustomEditorPlugin.INSTANCE.getString(key, new Object [] { s1 });
+ }
+
+ /**
+ * This creates a context menu for the viewer and adds a listener as well registering the menu for extension.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createContextMenuFor(StructuredViewer viewer) {
+ MenuManager contextMenu = new MenuManager("#PopUp");
+ contextMenu.add(new Separator("additions"));
+ contextMenu.setRemoveAllWhenShown(true);
+ contextMenu.addMenuListener(this);
+ Menu menu= contextMenu.createContextMenu(viewer.getControl());
+ viewer.getControl().setMenu(menu);
+ getSite().registerContextMenu(contextMenu, new UnwrappingSelectionProvider(viewer));
+
+ int dndOperations = DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK;
+ Transfer[] transfers = new Transfer[] { LocalTransfer.getInstance() };
+ viewer.addDragSupport(dndOperations, transfers, new ViewerDragAdapter(viewer));
+ viewer.addDropSupport(dndOperations, transfers, new EditingDomainViewerDropAdapter(editingDomain, viewer));
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.action.IMenuListener} to help fill the context menus with contributions from the Edit menu.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void menuAboutToShow(IMenuManager menuManager) {
+ ((IMenuListener)getEditorSite().getActionBarContributor()).menuAboutToShow(menuManager);
+ }
+
+ private Object buttonsGridData() {
+ final GridData buttonsGridData = new GridData();
+ buttonsGridData.grabExcessHorizontalSpace = true;
+ buttonsGridData.grabExcessVerticalSpace = false;
+ buttonsGridData.horizontalAlignment = SWT.FILL;
+ buttonsGridData.verticalAlignment = SWT.FILL;
+ return buttonsGridData;
+ }
+
+ private Composite createButtonsPane(final Composite parent){
+ return createButtonsPaneWhenCustomizationIsSelected(parent);
+ }
+
+ private Composite createButtonsPaneWhenCustomizationIsSelected(final Composite parent) {
+ this.buttonsPaneComposite = new Composite(parent, SWT.NONE);
+ final GridData buttonsPaneGridData = new GridData();
+ buttonsPaneGridData.grabExcessHorizontalSpace = false;
+ buttonsPaneGridData.grabExcessVerticalSpace = true;
+ buttonsPaneGridData.horizontalAlignment = SWT.FILL;
+ buttonsPaneGridData.verticalAlignment = SWT.FILL;
+ buttonsPaneComposite.setLayoutData(buttonsPaneGridData);
+
+ buttonsPaneComposite.setLayout(new GridLayout());
+
+ final Composite spacer1 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer1GridData = new GridData();
+ spacer1GridData.heightHint = CustomEditor.VERTICAL_SPACE_BEFORE_FIRST_BUTTON;
+ spacer1.setLayoutData(spacer1GridData);
+
+ final Composite spacer2 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer2GridData = new GridData();
+ spacer2GridData.heightHint = CustomEditor.VERTICAL_SPACE_BETWEEN_BUTTON_GROUPS;
+ spacer2.setLayoutData(spacer2GridData);
+
+ final Label lblConditions = new Label(buttonsPaneComposite, SWT.NONE);
+ lblConditions.setText("add");
+
+ this.btnAddFacetSet = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacetSet.setText("FacetSet");
+ this.btnAddFacetSet.setLayoutData(buttonsGridData());
+ this.btnAddFacetSet.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddFacetSetClicked();
+ }
+ });
+
+ this.btnAddFacet = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacet.setText("Facet");
+ this.btnAddFacet.setLayoutData(buttonsGridData());
+ this.btnAddFacet.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddFacetClicked();
+ }
+ });
+
+ this.btnAddEClassCustom = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddEClassCustom.setText("EClassCustom");
+ this.btnAddEClassCustom.setLayoutData(buttonsGridData());
+ this.btnAddEClassCustom.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddECLassCustomClicked();
+ }
+ });
+
+ this.btnAddFacetCustom = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacetCustom.setText("FacetCustom");
+ this.btnAddFacetCustom.setLayoutData(buttonsGridData());
+ this.btnAddFacetCustom.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddFacetCustomClicked();
+ }
+ });
+
+ return buttonsPaneComposite;
+ }
+
+ protected void btnRemoveClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final TreeSelection selectedElement = (TreeSelection)getSelection();
+ final Object selectedObject = selectedElement.getFirstElement();
+ if (selectedObject instanceof EObject) {
+ final EObject eObject = (EObject) selectedObject;
+ final EObject eContainer = eObject.eContainer();
+
+ if(eContainer instanceof Customization){
+
+ Command command = RemoveCommand.create(this.editingDomain,
+ eContainer,
+ EcorePackage.eINSTANCE.getEPackage_EClassifiers(),
+ eObject);
+ this.editingDomain.getCommandStack().execute(command);
+ //refresh();
+ }else if(eContainer instanceof Facet){
+ if(selectedObject instanceof FacetOperation){
+ Command command = RemoveCommand.create(this.editingDomain,
+ eContainer,
+ EFacetPackage.eINSTANCE.getFacet_FacetOperations(),
+ eObject);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+
+ }else if(selectedObject instanceof FacetAttribute || selectedObject instanceof FacetReference){
+ Command command = RemoveCommand.create(this.editingDomain,
+ eContainer,
+ EFacetPackage.eINSTANCE.getFacet_FacetElements(),
+ eObject);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }else if(eContainer instanceof FacetOperation){
+ Command command = RemoveCommand.create(this.editingDomain,
+ eContainer,
+ EcorePackage.eINSTANCE.getEOperation_EParameters(),
+ eObject);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+
+ }
+
+ }
+ }
+
+ protected void btnDownClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final TreeSelection selectedElement = (TreeSelection)getSelection();
+ final Object selectedObject = selectedElement.getFirstElement();
+ if (selectedObject instanceof EObject) {
+ final EObject eObject = (EObject) selectedObject;
+ final EObject eContainer = eObject.eContainer();
+
+ if(eContainer instanceof Customization){
+ EList<EClassifier>list = ((Customization)eContainer).getEClassifiers();
+ final int index = list.indexOf(eObject);
+ if (index + 1 < list.size()) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EcorePackage.eINSTANCE.getEPackage_EClassifiers(),
+ list.get(index), index + 1);
+ this.editingDomain.getCommandStack().execute(command);
+ }
+ //refresh();
+ }else if(eContainer instanceof Facet){
+ if(selectedObject instanceof FacetOperation){
+ EList<FacetOperation>list = ((Facet)eContainer).getFacetOperations();
+ final int index = list.indexOf(eObject);
+ if (index + 1 < list.size()) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EFacetPackage.eINSTANCE.getFacet_FacetOperations(),
+ list.get(index), index + 1);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }else if(selectedObject instanceof FacetAttribute || selectedObject instanceof FacetReference){
+ EList<EStructuralFeature>list = ((Facet)eContainer).getFacetElements();
+ final int index = list.indexOf(eObject);
+ if (index + 1 < list.size()) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EFacetPackage.eINSTANCE.getFacet_FacetElements(),
+ list.get(index), index + 1);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }
+ }else if(eContainer instanceof FacetOperation){
+ EList<EParameter>list = ((FacetOperation)eContainer).getEParameters();
+ final int index = list.indexOf(eObject);
+ if (index + 1 < list.size()) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EcorePackage.eINSTANCE.getEOperation_EParameters(),
+ list.get(index), index + 1);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }
+
+ }
+ }
+
+ protected void btnUpClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final TreeSelection selectedElement = (TreeSelection)getSelection();
+ final Object selectedObject = selectedElement.getFirstElement();
+ if (selectedObject instanceof EObject) {
+ final EObject eObject = (EObject) selectedObject;
+ final EObject eContainer = eObject.eContainer();
+
+ if(eContainer instanceof Customization){
+ EList<EClassifier>list = ((Customization)eContainer).getEClassifiers();
+ final int index = list.indexOf(eObject);
+ if (index - 1 >= 0) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EcorePackage.eINSTANCE.getEPackage_EClassifiers(),
+ list.get(index), index - 1);
+ this.editingDomain.getCommandStack().execute(command);
+ }
+ //refresh();
+ }else if(eContainer instanceof Facet){
+ if(selectedObject instanceof FacetOperation){
+ EList<FacetOperation>list = ((Facet)eContainer).getFacetOperations();
+ final int index = list.indexOf(eObject);
+ if (index - 1 >= 0) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EFacetPackage.eINSTANCE.getFacet_FacetOperations(),
+ list.get(index), index - 1);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }else if(selectedObject instanceof FacetAttribute || selectedObject instanceof FacetReference){
+ EList<EStructuralFeature>list = ((Facet)eContainer).getFacetElements();
+ final int index = list.indexOf(eObject);
+ if (index - 1 >= 0) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EFacetPackage.eINSTANCE.getFacet_FacetElements(),
+ list.get(index), index - 1);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }
+ }else if(eContainer instanceof FacetOperation){
+ EList<EParameter>list = ((FacetOperation)eContainer).getEParameters();
+ final int index = list.indexOf(eObject);
+ if (index - 1 >= 0) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EcorePackage.eINSTANCE.getEOperation_EParameters(),
+ list.get(index), index - 1);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }
+
+ }
+
+ }
+
+ protected void btnAddFacetCustomClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Customization) {
+ ICustomizationDialogFactory.DEFAULT.openCreateFacetCustomizationDialog(getSite().getShell().getDisplay(), editingDomain);
+ }
+
+ }
+
+ protected void btnAddECLassCustomClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Customization) {
+ ICustomizationDialogFactory.DEFAULT.openCreateEClassCustomizationDialog(getSite().getShell().getDisplay(), editingDomain);
+ }
+
+ }
+
+ protected void btnAddFacetClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Customization) {
+ IFacetDialogFactory.INSTANCE.openCreateFacetInFacetSetDialog();
+ }
+ }
+
+ protected void btnAddFacetSetClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Customization) {
+ IFacetDialogFactory.INSTANCE.openCreateFacetSetInFacetSetDialog();
+ }
+ }
+
+ private Composite createButtonsPaneWhenFacetIsSelected(final Composite parent) {
+ this.buttonsPaneComposite = new Composite(parent, SWT.NONE);
+ final GridData buttonsPaneGridData = new GridData();
+ buttonsPaneGridData.grabExcessHorizontalSpace = false;
+ buttonsPaneGridData.grabExcessVerticalSpace = true;
+ buttonsPaneGridData.horizontalAlignment = SWT.FILL;
+ buttonsPaneGridData.verticalAlignment = SWT.FILL;
+ buttonsPaneComposite.setLayoutData(buttonsPaneGridData);
+
+ buttonsPaneComposite.setLayout(new GridLayout());
+
+ final Composite spacer1 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer1GridData = new GridData();
+ spacer1GridData.heightHint = CustomEditor.VERTICAL_SPACE_BEFORE_FIRST_BUTTON;
+ spacer1.setLayoutData(spacer1GridData);
+
+ final Composite spacer2 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer2GridData = new GridData();
+ spacer2GridData.heightHint = CustomEditor.VERTICAL_SPACE_BETWEEN_BUTTON_GROUPS;
+ spacer2.setLayoutData(spacer2GridData);
+
+ final Label lblConditions = new Label(buttonsPaneComposite, SWT.NONE);
+ lblConditions.setText("add");
+
+ this.btnAddFacetAttr = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacetAttr.setText("Facet Attribute");
+ this.btnAddFacetAttr.setLayoutData(buttonsGridData());
+ this.btnAddFacetAttr.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddFacetAttributeClicked();
+ }
+ });
+
+ this.btnAddFacetRef = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacetRef.setText("Facet Reference");
+ this.btnAddFacetRef.setLayoutData(buttonsGridData());
+ this.btnAddFacetRef.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddFacetReferenceClicked();
+ }
+ });
+
+ this.btnAddFacetOp = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacetOp.setText("Facet Operation");
+ this.btnAddFacetOp.setLayoutData(buttonsGridData());
+ this.btnAddFacetOp.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddFacetOperationClicked();
+ }
+ });
+
+ final Composite spacer3 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer3GridData = new GridData();
+ spacer3GridData.heightHint = CustomEditor.VERTICAL_SPACE_BETWEEN_BUTTON_GROUPS;
+ spacer3.setLayoutData(spacer2GridData);
+
+ final Label lblEditions = new Label(buttonsPaneComposite, SWT.NONE);
+ lblEditions.setText("edit");
+
+ this.btnEdit = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnEdit.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_edit"));
+ this.btnEdit.setLayoutData(buttonsGridData());
+ this.btnEdit.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnEditClicked();
+ }
+ });
+
+ this.btnRemove = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnRemove.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_remove"));
+ this.btnRemove.setLayoutData(buttonsGridData());
+ this.btnRemove.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnRemoveClicked();
+ }
+ });
+
+ this.btnUp = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnUp.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_up"));
+ this.btnUp.setLayoutData(buttonsGridData());
+ this.btnUp.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnUpClicked();
+ }
+ });
+
+ this.btnDown = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnDown.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_down"));
+ this.btnDown.setLayoutData(buttonsGridData());
+ this.btnDown.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnDownClicked();
+ }
+ });
+
+ return buttonsPaneComposite;
+ }
+
+ protected void btnAddFacetOperationClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Facet) {
+ IFacetDialogFactory.INSTANCE.openAddOperationInFacetDialog();
+ }
+
+ }
+
+ protected void btnAddFacetReferenceClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Facet) {
+ IFacetDialogFactory.INSTANCE.openAddReferenceInFacetDialog();
+ }
+ }
+
+ protected void btnAddFacetAttributeClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Facet) {
+ IFacetDialogFactory.INSTANCE.openAddAttributeInFacetDialog();
+ }
+ }
+
+ private Composite createButtonsPaneWhenDerivedIsSelected(final Composite parent) {
+ this.buttonsPaneComposite = new Composite(parent, SWT.NONE);
+ final GridData buttonsPaneGridData = new GridData();
+ buttonsPaneGridData.grabExcessHorizontalSpace = false;
+ buttonsPaneGridData.grabExcessVerticalSpace = true;
+ buttonsPaneGridData.horizontalAlignment = SWT.FILL;
+ buttonsPaneGridData.verticalAlignment = SWT.FILL;
+ buttonsPaneComposite.setLayoutData(buttonsPaneGridData);
+
+ buttonsPaneComposite.setLayout(new GridLayout());
+
+ final Composite spacer1 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer1GridData = new GridData();
+ spacer1GridData.heightHint = CustomEditor.VERTICAL_SPACE_BEFORE_FIRST_BUTTON;
+ spacer1.setLayoutData(spacer1GridData);
+
+ final Composite spacer2 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer2GridData = new GridData();
+ spacer2GridData.heightHint = CustomEditor.VERTICAL_SPACE_BETWEEN_BUTTON_GROUPS;
+ spacer2.setLayoutData(spacer2GridData);
+
+ final Label lblConditions = new Label(buttonsPaneComposite, SWT.NONE);
+ lblConditions.setText("add");
+
+ this.btnAddFacetParam = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacetParam.setText("Parameter");
+ this.btnAddFacetParam.setLayoutData(buttonsGridData());
+ this.btnAddFacetParam.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddParameterClicked();
+ }
+ });
+
+ if(!(((TreeSelection)getSelection()).getFirstElement() instanceof FacetOperation)){
+ this.btnAddFacetParam.setEnabled(false);
+ }else{
+ this.btnAddFacetParam.setEnabled(true);
+ }
+
+ final Composite spacer3 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer3GridData = new GridData();
+ spacer3GridData.heightHint = CustomEditor.VERTICAL_SPACE_BETWEEN_BUTTON_GROUPS;
+ spacer3.setLayoutData(spacer2GridData);
+
+ final Label lblEditions = new Label(buttonsPaneComposite, SWT.NONE);
+ lblEditions.setText("edit");
+
+ this.btnEdit = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnEdit.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_edit"));
+ this.btnEdit.setLayoutData(buttonsGridData());
+ this.btnEdit.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnEditClicked();
+ }
+ });
+
+ this.btnRemove = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnRemove.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_remove"));
+ this.btnRemove.setLayoutData(buttonsGridData());
+ this.btnRemove.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnRemoveClicked();
+ }
+ });
+
+ this.btnUp = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnUp.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_up"));
+ this.btnUp.setLayoutData(buttonsGridData());
+ this.btnUp.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnUpClicked();
+ }
+ });
+
+ this.btnDown = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnDown.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_down"));
+ this.btnDown.setLayoutData(buttonsGridData());
+ this.btnDown.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnDownClicked();
+ }
+ });
+
+ return buttonsPaneComposite;
+ }
+
+ protected void btnAddParameterClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if(selectedElement instanceof TreeSelection){
+ final Object selectedObject = ((TreeSelection)selectedElement).getFirstElement();
+ if (selectedObject instanceof FacetOperation) {
+ IFacetDialogFactory.INSTANCE.openAddParameterInOperationDialog();
+ }
+ }
+ }
+
+ public EditingDomain getEditingDomain() {
+ return editingDomain;
+ }
+
+ public Viewer getViewer() {
+ return selectionViewer;
+ }
+
+ /**
+ * This also changes the editor's input.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void doSaveAs() {
+ SaveAsDialog saveAsDialog = new SaveAsDialog(getSite().getShell());
+ saveAsDialog.open();
+ IPath path = saveAsDialog.getResult();
+ if (path != null) {
+ IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
+ if (file != null) {
+ doSaveAs(URI.createPlatformResourceURI(file.getFullPath().toString(), true), new FileEditorInput(file));
+ }
+ }
+ }
+
+}
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditorPlugin.java b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditorPlugin.java
new file mode 100644
index 00000000000..1ef937d2ed9
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditorPlugin.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * 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:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import org.eclipse.emf.common.EMFPlugin;
+
+import org.eclipse.emf.common.ui.EclipseUIPlugin;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+
+/**
+ * This is the central singleton for the Custom editor plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public final class CustomEditorPlugin extends EMFPlugin {
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final CustomEditorPlugin INSTANCE = new CustomEditorPlugin();
+
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static Implementation plugin;
+
+ /**
+ * Create the instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomEditorPlugin() {
+ super
+ (new ResourceLocator [] {
+ Efacet2EditPlugin.INSTANCE,
+ });
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ @Override
+ public ResourceLocator getPluginResourceLocator() {
+ return plugin;
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ public static Implementation getPlugin() {
+ return plugin;
+ }
+
+ /**
+ * The actual implementation of the Eclipse <b>Plugin</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static class Implementation extends EclipseUIPlugin {
+ /**
+ * Creates an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Implementation() {
+ super();
+
+ // Remember the static instance.
+ //
+ plugin = this;
+ }
+ }
+
+}
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomModelWizard.java b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomModelWizard.java
new file mode 100644
index 00000000000..09135352270
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomModelWizard.java
@@ -0,0 +1,639 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * 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:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.MissingResourceException;
+import java.util.StringTokenizer;
+
+import org.eclipse.emf.common.CommonPlugin;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.emf.ecore.xmi.XMLResource;
+
+import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+
+import org.eclipse.jface.dialogs.MessageDialog;
+
+import org.eclipse.jface.viewers.IStructuredSelection;
+
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.jface.wizard.WizardPage;
+
+import org.eclipse.swt.SWT;
+
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.ModifyEvent;
+
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+
+import org.eclipse.ui.INewWizard;
+import org.eclipse.ui.IWorkbench;
+
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
+
+import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
+
+import org.eclipse.ui.part.FileEditorInput;
+import org.eclipse.ui.part.ISetSelectionTarget;
+
+import org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.CustomFactory;
+import org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.provider.CustomEditPlugin;
+
+
+import org.eclipse.core.runtime.Path;
+
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+
+
+/**
+ * This is a simple wizard for creating a new model file.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomModelWizard extends Wizard implements INewWizard {
+ /**
+ * The supported extensions for created files.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<String> FILE_EXTENSIONS =
+ Collections.unmodifiableList(Arrays.asList(CustomEditorPlugin.INSTANCE.getString("_UI_CustomEditorFilenameExtensions").split("\\s*,\\s*")));
+
+ /**
+ * A formatted list of supported file extensions, suitable for display.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final String FORMATTED_FILE_EXTENSIONS =
+ CustomEditorPlugin.INSTANCE.getString("_UI_CustomEditorFilenameExtensions").replaceAll("\\s*,\\s*", ", ");
+
+ /**
+ * This caches an instance of the model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomPackage customPackage = CustomPackage.eINSTANCE;
+
+ /**
+ * This caches an instance of the model factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomFactory customFactory = customPackage.getCustomFactory();
+
+ /**
+ * This is the file creation page.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomModelWizardNewFileCreationPage newFileCreationPage;
+
+ /**
+ * This is the initial object creation page.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomModelWizardInitialObjectCreationPage initialObjectCreationPage;
+
+ /**
+ * Remember the selection during initialization for populating the default container.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IStructuredSelection selection;
+
+ /**
+ * Remember the workbench during initialization.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IWorkbench workbench;
+
+ /**
+ * Caches the names of the types that can be created as the root object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected List<String> initialObjectNames;
+
+ /**
+ * This just records the information.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void init(IWorkbench workbench, IStructuredSelection selection) {
+ this.workbench = workbench;
+ this.selection = selection;
+ setWindowTitle(CustomEditorPlugin.INSTANCE.getString("_UI_Wizard_label"));
+ setDefaultPageImageDescriptor(ExtendedImageRegistry.INSTANCE.getImageDescriptor(CustomEditorPlugin.INSTANCE.getImage("full/wizban/NewCustom")));
+ }
+
+ /**
+ * Returns the names of the types that can be created as the root object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<String> getInitialObjectNames() {
+ if (initialObjectNames == null) {
+ initialObjectNames = new ArrayList<String>();
+ for (EClassifier eClassifier : customPackage.getEClassifiers()) {
+ if (eClassifier instanceof EClass) {
+ EClass eClass = (EClass)eClassifier;
+ if (!eClass.isAbstract()) {
+ initialObjectNames.add(eClass.getName());
+ }
+ }
+ }
+ Collections.sort(initialObjectNames, CommonPlugin.INSTANCE.getComparator());
+ }
+ return initialObjectNames;
+ }
+
+ /**
+ * Create a new model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EObject createInitialModel() {
+ EClass eClass = (EClass)customPackage.getEClassifier(initialObjectCreationPage.getInitialObjectName());
+ EObject rootObject = customFactory.create(eClass);
+ return rootObject;
+ }
+
+ /**
+ * Do the work after everything is specified.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean performFinish() {
+ try {
+ // Remember the file.
+ //
+ final IFile modelFile = getModelFile();
+
+ // Do the work within an operation.
+ //
+ WorkspaceModifyOperation operation =
+ new WorkspaceModifyOperation() {
+ @Override
+ protected void execute(IProgressMonitor progressMonitor) {
+ try {
+ // Create a resource set
+ //
+ ResourceSet resourceSet = new ResourceSetImpl();
+
+ // Get the URI of the model file.
+ //
+ URI fileURI = URI.createPlatformResourceURI(modelFile.getFullPath().toString(), true);
+
+ // Create a resource for this file.
+ //
+ Resource resource = resourceSet.createResource(fileURI);
+
+ // Add the initial model object to the contents.
+ //
+ EObject rootObject = createInitialModel();
+ if (rootObject != null) {
+ resource.getContents().add(rootObject);
+ }
+
+ // Save the contents of the resource to the file system.
+ //
+ Map<Object, Object> options = new HashMap<Object, Object>();
+ options.put(XMLResource.OPTION_ENCODING, initialObjectCreationPage.getEncoding());
+ resource.save(options);
+ }
+ catch (Exception exception) {
+ CustomEditorPlugin.INSTANCE.log(exception);
+ }
+ finally {
+ progressMonitor.done();
+ }
+ }
+ };
+
+ getContainer().run(false, false, operation);
+
+ // Select the new file resource in the current view.
+ //
+ IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
+ IWorkbenchPage page = workbenchWindow.getActivePage();
+ final IWorkbenchPart activePart = page.getActivePart();
+ if (activePart instanceof ISetSelectionTarget) {
+ final ISelection targetSelection = new StructuredSelection(modelFile);
+ getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ ((ISetSelectionTarget)activePart).selectReveal(targetSelection);
+ }
+ });
+ }
+
+ // Open an editor on the new file.
+ //
+ try {
+ page.openEditor
+ (new FileEditorInput(modelFile),
+ workbench.getEditorRegistry().getDefaultEditor(modelFile.getFullPath().toString()).getId());
+ }
+ catch (PartInitException exception) {
+ MessageDialog.openError(workbenchWindow.getShell(), CustomEditorPlugin.INSTANCE.getString("_UI_OpenEditorError_label"), exception.getMessage());
+ return false;
+ }
+
+ return true;
+ }
+ catch (Exception exception) {
+ CustomEditorPlugin.INSTANCE.log(exception);
+ return false;
+ }
+ }
+
+ /**
+ * This is the one page of the wizard.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public class CustomModelWizardNewFileCreationPage extends WizardNewFileCreationPage {
+ /**
+ * Pass in the selection.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomModelWizardNewFileCreationPage(String pageId, IStructuredSelection selection) {
+ super(pageId, selection);
+ }
+
+ /**
+ * The framework calls this to see if the file is correct.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected boolean validatePage() {
+ if (super.validatePage()) {
+ String extension = new Path(getFileName()).getFileExtension();
+ if (extension == null || !FILE_EXTENSIONS.contains(extension)) {
+ String key = FILE_EXTENSIONS.size() > 1 ? "_WARN_FilenameExtensions" : "_WARN_FilenameExtension";
+ setErrorMessage(CustomEditorPlugin.INSTANCE.getString(key, new Object [] { FORMATTED_FILE_EXTENSIONS }));
+ return false;
+ }
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IFile getModelFile() {
+ return ResourcesPlugin.getWorkspace().getRoot().getFile(getContainerFullPath().append(getFileName()));
+ }
+ }
+
+ /**
+ * This is the page where the type of object to create is selected.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public class CustomModelWizardInitialObjectCreationPage extends WizardPage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Combo initialObjectField;
+
+ /**
+ * @generated
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ */
+ protected List<String> encodings;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Combo encodingField;
+
+ /**
+ * Pass in the selection.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomModelWizardInitialObjectCreationPage(String pageId) {
+ super(pageId);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createControl(Composite parent) {
+ Composite composite = new Composite(parent, SWT.NONE);
+ {
+ GridLayout layout = new GridLayout();
+ layout.numColumns = 1;
+ layout.verticalSpacing = 12;
+ composite.setLayout(layout);
+
+ GridData data = new GridData();
+ data.verticalAlignment = GridData.FILL;
+ data.grabExcessVerticalSpace = true;
+ data.horizontalAlignment = GridData.FILL;
+ composite.setLayoutData(data);
+ }
+
+ Label containerLabel = new Label(composite, SWT.LEFT);
+ {
+ containerLabel.setText(CustomEditorPlugin.INSTANCE.getString("_UI_ModelObject"));
+
+ GridData data = new GridData();
+ data.horizontalAlignment = GridData.FILL;
+ containerLabel.setLayoutData(data);
+ }
+
+ initialObjectField = new Combo(composite, SWT.BORDER);
+ {
+ GridData data = new GridData();
+ data.horizontalAlignment = GridData.FILL;
+ data.grabExcessHorizontalSpace = true;
+ initialObjectField.setLayoutData(data);
+ }
+
+ for (String objectName : getInitialObjectNames()) {
+ initialObjectField.add(getLabel(objectName));
+ }
+
+ if (initialObjectField.getItemCount() == 1) {
+ initialObjectField.select(0);
+ }
+ initialObjectField.addModifyListener(validator);
+
+ Label encodingLabel = new Label(composite, SWT.LEFT);
+ {
+ encodingLabel.setText(CustomEditorPlugin.INSTANCE.getString("_UI_XMLEncoding"));
+
+ GridData data = new GridData();
+ data.horizontalAlignment = GridData.FILL;
+ encodingLabel.setLayoutData(data);
+ }
+ encodingField = new Combo(composite, SWT.BORDER);
+ {
+ GridData data = new GridData();
+ data.horizontalAlignment = GridData.FILL;
+ data.grabExcessHorizontalSpace = true;
+ encodingField.setLayoutData(data);
+ }
+
+ for (String encoding : getEncodings()) {
+ encodingField.add(encoding);
+ }
+
+ encodingField.select(0);
+ encodingField.addModifyListener(validator);
+
+ setPageComplete(validatePage());
+ setControl(composite);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ModifyListener validator =
+ new ModifyListener() {
+ public void modifyText(ModifyEvent e) {
+ setPageComplete(validatePage());
+ }
+ };
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected boolean validatePage() {
+ return getInitialObjectName() != null && getEncodings().contains(encodingField.getText());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setVisible(boolean visible) {
+ super.setVisible(visible);
+ if (visible) {
+ if (initialObjectField.getItemCount() == 1) {
+ initialObjectField.clearSelection();
+ encodingField.setFocus();
+ }
+ else {
+ encodingField.clearSelection();
+ initialObjectField.setFocus();
+ }
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getInitialObjectName() {
+ String label = initialObjectField.getText();
+
+ for (String name : getInitialObjectNames()) {
+ if (getLabel(name).equals(label)) {
+ return name;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getEncoding() {
+ return encodingField.getText();
+ }
+
+ /**
+ * Returns the label for the specified type name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected String getLabel(String typeName) {
+ try {
+ return CustomEditPlugin.INSTANCE.getString("_UI_" + typeName + "_type");
+ }
+ catch(MissingResourceException mre) {
+ CustomEditorPlugin.INSTANCE.log(mre);
+ }
+ return typeName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<String> getEncodings() {
+ if (encodings == null) {
+ encodings = new ArrayList<String>();
+ for (StringTokenizer stringTokenizer = new StringTokenizer(CustomEditorPlugin.INSTANCE.getString("_UI_XMLEncodingChoices")); stringTokenizer.hasMoreTokens(); ) {
+ encodings.add(stringTokenizer.nextToken());
+ }
+ }
+ return encodings;
+ }
+ }
+
+ /**
+ * The framework calls this to create the contents of the wizard.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void addPages() {
+ // Create a page, set the title, and the initial model file name.
+ //
+ newFileCreationPage = new CustomModelWizardNewFileCreationPage("Whatever", selection);
+ newFileCreationPage.setTitle(CustomEditorPlugin.INSTANCE.getString("_UI_CustomModelWizard_label"));
+ newFileCreationPage.setDescription(CustomEditorPlugin.INSTANCE.getString("_UI_CustomModelWizard_description"));
+ newFileCreationPage.setFileName(CustomEditorPlugin.INSTANCE.getString("_UI_CustomEditorFilenameDefaultBase") + "." + FILE_EXTENSIONS.get(0));
+ addPage(newFileCreationPage);
+
+ // Try and get the resource selection to determine a current directory for the file dialog.
+ //
+ if (selection != null && !selection.isEmpty()) {
+ // Get the resource...
+ //
+ Object selectedElement = selection.iterator().next();
+ if (selectedElement instanceof IResource) {
+ // Get the resource parent, if its a file.
+ //
+ IResource selectedResource = (IResource)selectedElement;
+ if (selectedResource.getType() == IResource.FILE) {
+ selectedResource = selectedResource.getParent();
+ }
+
+ // This gives us a directory...
+ //
+ if (selectedResource instanceof IFolder || selectedResource instanceof IProject) {
+ // Set this for the container.
+ //
+ newFileCreationPage.setContainerFullPath(selectedResource.getFullPath());
+
+ // Make up a unique new name here.
+ //
+ String defaultModelBaseFilename = CustomEditorPlugin.INSTANCE.getString("_UI_CustomEditorFilenameDefaultBase");
+ String defaultModelFilenameExtension = FILE_EXTENSIONS.get(0);
+ String modelFilename = defaultModelBaseFilename + "." + defaultModelFilenameExtension;
+ for (int i = 1; ((IContainer)selectedResource).findMember(modelFilename) != null; ++i) {
+ modelFilename = defaultModelBaseFilename + i + "." + defaultModelFilenameExtension;
+ }
+ newFileCreationPage.setFileName(modelFilename);
+ }
+ }
+ }
+ initialObjectCreationPage = new CustomModelWizardInitialObjectCreationPage("Whatever2");
+ initialObjectCreationPage.setTitle(CustomEditorPlugin.INSTANCE.getString("_UI_CustomModelWizard_label"));
+ initialObjectCreationPage.setDescription(CustomEditorPlugin.INSTANCE.getString("_UI_Wizard_initial_object_description"));
+ addPage(initialObjectCreationPage);
+ }
+
+ /**
+ * Get the file from the page.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IFile getModelFile() {
+ return newFileCreationPage.getModelFile();
+ }
+
+}
diff --git a/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomViewer.java b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomViewer.java
new file mode 100644
index 00000000000..bebfabfb479
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.emf.facet.custom.metamodel.editor/src/org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomViewer.java
@@ -0,0 +1,445 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2010 Mia-Software.
+ * 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:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
+import javax.naming.event.ObjectChangeListener;
+
+import org.eclipse.emf.common.util.BasicEList;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery;
+import org.eclipse.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery;
+import org.eclipse.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery;
+import org.eclipse.emf.facet.query.ocl.metamodel.oclquery.OclQuery;
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StyledCellLabelProvider;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.TreeViewerColumn;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.jface.viewers.ViewerCell;
+import org.eclipse.jface.viewers.ViewerComparator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.StyleRange;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.RGB;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.TreeItem;
+
+/**
+ * Displays the current customizations for a given {@link CustomView}, which is
+ * the input of the viewer
+ */
+public class CustomViewer {
+
+ private static final int VALUE_COLUMN_WIDTH = 200;
+ private static final int TYPE_COLUMN_WIDTH = 200;
+ private static final int FEATURE_COLUMN_WIDTH = 200;
+ private final TreeViewer treeViewer;
+
+ //Customization
+ private static final String TOP_LEFT_OVERLAY_ICON_PATH = "topLeftOverlay";
+ private static final String TOP_MIDDLE_OVERLAY_ICON_PATH = "topMiddleOverlay";
+ private static final String TOP_RIGHT_OVERLAY_ICON_PATH = "topRightOverlay";
+ private static final String MIDDLE_LEFT_OVERLAY_ICON_PATH = "middleLeftOverlay";
+ private static final String MIDDLE_RIGHT_OVERLAY_ICON_PATH = "middleRightOverlay";
+ private static final String BOTTOM_LEFT_OVERLAY_ICON_PATH = "bottomLeftOverlay";
+ private static final String BOTTOM_MIDDLE_OVERLAY_ICON_PATH = "bottomMiddleOverlay";
+ private static final String BOTTOM_RIGHT_OVERLAY_ICON_PATH = "bottomRightOverlay";
+ private static final String CUSTOMIZATION_LABEL = "label";
+ private static final String CUSTOMIZATION_IMAGE = "image";
+ private static final String CUSTOMIZATION_FOREGROUND = "foreground";
+ private static final String CUSTOMIZATION_BACKGROUND = "background";
+ private static final String FONT_NAME = "fontName";
+ private static final String FONT_SIZE = "fontSize";
+ private static final String FONT_BOLD = "isBold";
+ private static final String FONT_ITALIC = "isItalic";
+ private static final String FONT_UNDERLINE = "isUnderlined";
+ private static final String FONT_STRUKETHROUGH = "isStruckthrough";
+
+ public CustomViewer(final Composite parent) {
+ this.treeViewer = new TreeViewer(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER
+ | SWT.SINGLE | SWT.FULL_SELECTION);
+ this.treeViewer.getTree().setHeaderVisible(true);
+
+ final TreeViewerColumn featureColumn = new TreeViewerColumn(this.treeViewer, SWT.LEFT);
+ featureColumn.getColumn().setText("feature column");
+ featureColumn.getColumn().setWidth(CustomViewer.FEATURE_COLUMN_WIDTH);
+ final TreeViewerColumn typeColumn = new TreeViewerColumn(this.treeViewer, SWT.LEFT);
+ typeColumn.getColumn().setText("feature type");
+ typeColumn.getColumn().setWidth(CustomViewer.TYPE_COLUMN_WIDTH);
+ final TreeViewerColumn valueColumn = new TreeViewerColumn(this.treeViewer, SWT.LEFT);
+ valueColumn.getColumn().setText("feature value");
+ valueColumn.getColumn().setWidth(CustomViewer.VALUE_COLUMN_WIDTH);
+
+ this.treeViewer.setContentProvider(new CustomViewerContentProvider());
+
+ // for sorting purposes
+ this.treeViewer.setLabelProvider(new FeatureLabelProvider());
+ this.treeViewer.setComparator(new ViewerComparator() {
+ @Override
+ public int compare(final Viewer viewer, final Object e1, final Object e2) {
+ // do not sort value cases
+ if (e1 instanceof FacetOperation) {
+ return 0;
+ }
+ return super.compare(viewer, e1, e2);
+ }
+ });
+
+ featureColumn.setLabelProvider(new FeatureLabelProvider());
+ typeColumn.setLabelProvider(new TypeLabelProvider());
+ valueColumn.setLabelProvider(new ValueLabelProvider());
+
+ this.treeViewer.addSelectionChangedListener(new ISelectionChangedListener() {
+ public void selectionChanged(final SelectionChangedEvent event) {
+ // for selection text color
+ CustomViewer.this.treeViewer.refresh();
+ }
+ });
+ }
+
+ public void setInput(final Object input) {
+ this.treeViewer.setInput(input);
+ }
+
+ protected class CustomViewerContentProvider implements ITreeContentProvider {
+ public Object[] getElements(final Object inputElement) {
+ final List facetOperations = new ArrayList<FacetOperation>();
+ if (inputElement instanceof FacetOperation) {
+ final FacetOperation facetOperation = (FacetOperation) inputElement;
+ facetOperations.add(facetOperation);
+ }
+ if(inputElement instanceof FacetElement){
+ final FacetElement facetElement = (FacetElement)inputElement;
+ facetOperations.add(facetElement);
+ }
+ if(inputElement instanceof List){
+ for (Object object : (List)inputElement) {
+ if(object instanceof DerivedTypedElement){
+ facetOperations.add(object);
+ }
+ }
+ }
+ return facetOperations.toArray();
+ }
+
+ public Object[] getChildren(final Object parentElement) {
+
+ if (parentElement instanceof FacetOperation) {
+ final FacetOperation facetOperation = (FacetOperation) parentElement;
+ final EList<EParameter> parameters = new BasicEList<EParameter>();
+ parameters.addAll(facetOperation.getEParameters());
+ return parameters.toArray();
+ }
+
+ return new Object[0];
+ }
+
+ public Object getParent(final Object element) {
+ if (element instanceof EParameter) {
+ final EParameter eParameter = (EParameter) element;
+ return eParameter.getEOperation();
+ }
+ return null;
+ }
+
+ public boolean hasChildren(final Object element) {
+ if (element instanceof FacetOperation) {
+ final FacetOperation facetOperation = (FacetOperation) element;
+ return !facetOperation.getEParameters().isEmpty();
+ }
+ return false;
+ }
+
+ public void dispose() {
+ // nothing
+ }
+
+ public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) {
+ // nothing
+ }
+ }
+
+ protected class FeatureLabelProvider extends ColumnLabelProvider {
+
+ @Override
+ public String getText(final Object element) {
+ if (element instanceof DerivedTypedElement) {
+ final DerivedTypedElement facetElement = (DerivedTypedElement) element;
+ return facetElement.getName() ;
+ }else if (element instanceof ParameterValue){
+ final ParameterValue parameterValue = (ParameterValue) element;
+ return parameterValue.getParameter().getName();
+ }else if (element instanceof EParameter){
+ final EParameter parameterValue = (EParameter) element;
+ return parameterValue.getName();
+ }
+ return element.toString();
+ }
+
+ @Override
+ public Font getFont(final Object element) {
+ return null;
+ }
+
+ }
+
+ protected class ValueLabelProvider extends ColumnLabelProvider {
+
+ /** Images in use */
+ private final HashMap<String, Image> images = new HashMap<String, Image>();
+
+ public ValueLabelProvider() {
+ super();
+ }
+
+ public String getText(final Object element) {
+
+ if(element instanceof DerivedTypedElement){
+ DerivedTypedElement derivedTypedElement = (DerivedTypedElement)element;
+ Query query = derivedTypedElement.getQuery();
+ if(query != null){
+ if(query instanceof StringLiteralQuery){
+ StringLiteralQuery stringQuery = (StringLiteralQuery)query;
+ return stringQuery.getValue();
+ }else if(query instanceof TrueLiteralQuery){
+ return "true";
+ }else if(query instanceof FalseLiteralQuery){
+ return "false";
+ }else if(query instanceof NullLiteralQuery){
+ return "null";
+ }else if(query instanceof OperationCallQuery){
+ OperationCallQuery operationCallQuery = (OperationCallQuery)query;
+ return operationCallQuery.toString();
+ }else if(query instanceof JavaQuery){
+ JavaQuery javaQuery = (JavaQuery)query;
+ String qualifiedName = javaQuery.getImplementationClassName();
+ String[] path = qualifiedName.split("\\.");
+ return path[path.length -1];
+ }else if (query instanceof OclQuery){
+ OclQuery oclQuery = (OclQuery)query;
+ return oclQuery.getOclExpression();
+ }else if (query instanceof NavigationQuery){
+ NavigationQuery navigationQuery = (NavigationQuery)query;
+ return navigationQuery.getPath().toString();
+ }else if (query instanceof IsOneOfQuery){
+ IsOneOfQuery isOneOfQuery = (IsOneOfQuery)query;
+ return isOneOfQuery.getExpectedEObjects().toString();
+ }else if (query instanceof IntegerLiteralQuery){
+ IntegerLiteralQuery integerQuery = (IntegerLiteralQuery)query;
+ return String.valueOf(integerQuery.getValue());
+ }else if (query instanceof FloatLiteralQuery){
+ FloatLiteralQuery floatQuery = (FloatLiteralQuery)query;
+ return String.valueOf(floatQuery.getValue());
+ }else if (query instanceof EObjectLiteralQuery){
+ EObjectLiteralQuery eObjectQuery = (EObjectLiteralQuery)query;
+ return eObjectQuery.getElement().eClass().getName();
+ }else if(query instanceof ETypedElementSwitchQuery){
+ ETypedElementSwitchQuery switchQuery = (ETypedElementSwitchQuery)query;
+ EList<ETypedElementCase> list = switchQuery.getCases();
+ List listResult = new ArrayList<String>();
+ for (ETypedElementCase object : list) {
+ if(object.getCase() != null){
+ listResult.add(object.getCase().getName());
+ }
+ }
+ return listResult.toString();
+ }
+ }
+ }else if(element instanceof EParameter){
+ EParameter parameterValue = (EParameter)element;
+ return "";
+ //return parameterValue.getName();
+ }
+ return "N/A";
+ }
+
+ public Image getImage(final Object element) {
+ return null;
+ }
+
+ @Override
+ public void dispose() {