Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcletavernie2012-02-23 13:39:29 +0000
committercletavernie2012-02-23 13:39:29 +0000
commit391f3cf94f02d52ba9c5e95b4ef2dd208d88106a (patch)
treef68149de224fe6387c9eb413e4e656b5257267f3
parent8569a1d7a7859bae83f1d919831ff45b2826e377 (diff)
downloadorg.eclipse.papyrus-391f3cf94f02d52ba9c5e95b4ef2dd208d88106a.tar.gz
org.eclipse.papyrus-391f3cf94f02d52ba9c5e95b4ef2dd208d88106a.tar.xz
org.eclipse.papyrus-391f3cf94f02d52ba9c5e95b4ef2dd208d88106a.zip
370797: [Theme] Papyrus should provide a support for CSS files on its diagrams
https://bugs.eclipse.org/bugs/show_bug.cgi?id=370797
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/.classpath7
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/.project28
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/META-INF/MANIFEST.MF25
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/about.html28
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/build.properties8
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/environment.xmi9
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/css.ctx78
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/MultipleStylableElement.xwt12
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleDiagram.xwt18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleEmbeddedStyleSheet.xwt15
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleStylableElement.xwt23
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleStyleSheetReference.xwt16
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/plugin.xml18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/Activator.java69
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/databinding/CSSClassObservableList.java128
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/CSSModelElement.java38
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/CSSModelElementFactory.java70
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/ModelStyleSheetsModelElement.java25
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/.classpath8
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/.project28
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/META-INF/MANIFEST.MF35
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/about.html28
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/build.properties10
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/model/ModelStyleSheets.ecore17
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/model/ModelStyleSheets.genmodel22
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/plugin.properties5
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/plugin.xml59
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/resources/base.css22
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/resources/papyrus_theme.css102
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSArrowStyleImpl.java133
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBasicCompartmentImpl.java117
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBasicSemanticCompartmentImpl.java117
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBooleanListValueStyleImpl.java125
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBooleanValueStyleImpl.java132
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSByteArrayValueStyleImpl.java132
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSCanonicalStyleImpl.java108
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSCompartmentImpl.java133
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSConnectorImpl.java337
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSConnectorStyleImpl.java328
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDataTypeStyleImpl.java108
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDescriptionStyleImpl.java108
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDiagramLinkStyleImpl.java86
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDiagramStyleImpl.java204
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDoubleListValueStyleImpl.java125
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDoubleValueStyleImpl.java132
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDrawerStyleImpl.java108
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSEObjectListValueStyleImpl.java108
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSEObjectValueStyleImpl.java108
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSFillStyleImpl.java156
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSFilteringStyleImpl.java133
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSFontStyleImpl.java252
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSGuideStyleImpl.java86
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSHintedDiagramLinkStyleImpl.java108
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSImageBufferStyleImpl.java132
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSImageStyleImpl.java132
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSIntListValueStyleImpl.java125
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSIntValueStyleImpl.java132
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSLineStyleImpl.java132
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSLineTypeStyleImpl.java109
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSListCompartmentImpl.java159
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSListValueStyleImpl.java125
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSMultiDiagramLinkStyleImpl.java86
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSNamedStyleImpl.java108
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSPageStyleImpl.java180
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSPropertiesSetStyleImpl.java108
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSRoundedCornersStyleImpl.java108
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSRoutingStyleImpl.java280
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSSemanticListCompartmentImpl.java159
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSShapeImpl.java452
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSShapeStyleImpl.java420
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSSingleValueStyleImpl.java132
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSSortingStyleImpl.java133
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSStandardDiagramImpl.java230
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSStringListValueStyleImpl.java125
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSStringValueStyleImpl.java132
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSTextStyleImpl.java109
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSTitleStyleImpl.java108
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/factory/CSSNotationFactory.java364
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/EmbeddedStyleSheet.java53
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/ModelStyleSheets.java46
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/ModelStyleSheetsFactory.java64
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/ModelStyleSheetsPackage.java337
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/StyleSheet.java22
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/StyleSheetReference.java53
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/EmbeddedStyleSheetImpl.java166
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/ModelStyleSheetsFactoryImpl.java121
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/ModelStyleSheetsImpl.java156
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/ModelStyleSheetsPackageImpl.java277
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/StyleSheetImpl.java45
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/StyleSheetReferenceImpl.java166
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/util/ModelStyleSheetsAdapterFactory.java197
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/util/ModelStyleSheetsSwitch.java196
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSArrowStyle.java23
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSBooleanListValueStyle.java20
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSBooleanValueStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSByteArrayValueStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSCanonicalStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSConnectorStyle.java18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDataTypeStyle.java18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDescriptionStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDiagramLinkStyle.java18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDiagramStyle.java18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDoubleListValueStyle.java20
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDoubleValueStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDrawerStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSEObjectListValueStyle.java18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSEObjectValueStyle.java18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSFillStyle.java25
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSFilteringStyle.java23
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSFontStyle.java37
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSGuideStyle.java18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSHintedDiagramLinkStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSImageBufferStyle.java18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSImageStyle.java22
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSIntListValueStyle.java20
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSIntValueStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSLineStyle.java22
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSLineTypeStyle.java20
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSListValueStyle.java20
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSMultiDiagramLinkStyle.java18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSNamedStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSPageStyle.java28
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSPropertiesSetStyle.java18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSRoundedCornersStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSRoutingStyle.java41
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSShapeStyle.java18
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSSingleValueStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSSortingStyle.java23
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSStringListValueStyle.java20
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSStringValueStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSTextStyle.java20
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSTitleStyle.java19
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSArrowStyleDelegate.java58
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSBooleanListValueStyleDelegate.java58
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSBooleanValueStyleDelegate.java57
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSByteArrayValueStyleDelegate.java57
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSCanonicalStyleDelegate.java48
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSConnectorStyleDelegate.java133
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDataTypeStyleDelegate.java48
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDescriptionStyleDelegate.java48
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDiagramLinkStyleDelegate.java38
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDiagramStyleDelegate.java84
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDoubleListValueStyleDelegate.java58
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDoubleValueStyleDelegate.java57
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDrawerStyleDelegate.java48
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSEObjectListValueStyleDelegate.java48
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSEObjectValueStyleDelegate.java48
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSFillStyleDelegate.java62
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSFilteringStyleDelegate.java58
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSFontStyleDelegate.java102
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSGuideStyleDelegate.java38
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSHintedDiagramLinkStyleDelegate.java48
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSImageBufferStyleDelegate.java57
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSImageStyleDelegate.java57
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSIntListValueStyleDelegate.java58
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSIntValueStyleDelegate.java57
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSLineStyleDelegate.java57
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSLineTypeStyleDelegate.java49
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSListValueStyleDelegate.java58
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSMultiDiagramLinkStyleDelegate.java38
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSNamedStyleDelegate.java48
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSPageStyleDelegate.java75
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSPropertiesSetStyleDelegate.java48
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSRoundedCornersStyleDelegate.java48
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSRoutingStyleDelegate.java115
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSShapeStyleDelegate.java161
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSSingleValueStyleDelegate.java57
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSSortingStyleDelegate.java58
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSStringListValueStyleDelegate.java58
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSStringValueStyleDelegate.java57
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSTextStyleDelegate.java49
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSTitleStyleDelegate.java48
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/Activator.java75
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/BooleanConverter.java38
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/ColorToGMFConverter.java86
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/IntegerConverter.java41
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/StringConverter.java37
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/dom/GMFElementAdapter.java295
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/BaseCSSEngine.java62
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/DiagramCSSEngine.java205
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/ExtendedCSSEngine.java67
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/ExtendedCSSEngineImpl.java272
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/GMFElementProvider.java41
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/GMFErrorHandler.java24
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/LazyCSSEngine.java30
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/ModelCSSEngine.java25
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/WorkspaceCSSEngine.java64
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/enginecopy/CSSComputedStyleImpl.java58
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/enginecopy/ExtendedViewCSSImpl.java146
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/enginecopy/StyleWrapper.java56
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/handler/CSSRefreshHandler.java28
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/GradientHelper.java137
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/ParserHelper.java48
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/SemanticElementHelper.java91
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/StringHelper.java32
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/listener/StyleSheetChangeListener.java20
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/lists/ExtendedCSSRuleList.java47
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/lists/ExtendedSelectorList.java47
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/lists/ExtendedStyleSheetList.java47
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/notation/CSSAnnotations.java50
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/notation/CSSDiagramImpl.java37
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/notation/ForceValueHelper.java130
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/provider/CSSAppearanceProvider.java47
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/provider/CSSCustomStyleDelegate.java83
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/provider/CustomStyle.java22
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/resource/CSSNotationModel.java26
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/resource/CSSNotationResource.java33
-rw-r--r--incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/resource/CSSNotationResourceFactory.java37
210 files changed, 16490 insertions, 0 deletions
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/.classpath b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/.classpath
new file mode 100644
index 00000000000..37a803ebf49
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/.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 excluding="org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/ModelStyleSheetsModelElement.java" kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/.project b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/.project
new file mode 100644
index 00000000000..ca8a42ae981
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.infra.gmfdiag.css.properties</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/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/.settings/org.eclipse.jdt.core.prefs b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..44217f8c068
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/.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/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/META-INF/MANIFEST.MF b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..b55f19113d8
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/META-INF/MANIFEST.MF
@@ -0,0 +1,25 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: CSS Properties
+Bundle-SymbolicName: org.eclipse.papyrus.infra.gmfdiag.css.properties;singleton:=true
+Bundle-Version: 0.9.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.infra.gmfdiag.css.properties.Activator
+Bundle-Vendor: Eclipse Modeling Project
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.papyrus.views.properties;bundle-version="0.9.0",
+ org.eclipse.papyrus.views.properties.model;bundle-version="0.9.0",
+ org.eclipse.papyrus.infra.core.log;bundle-version="0.9.0",
+ org.eclipse.emf.edit;bundle-version="2.8.0",
+ org.eclipse.papyrus.infra.emf;bundle-version="0.9.0",
+ org.eclipse.core.databinding;bundle-version="1.4.1",
+ org.eclipse.papyrus.infra.widgets;bundle-version="0.9.0",
+ org.eclipse.papyrus.uml.tools;bundle-version="0.9.0",
+ org.eclipse.papyrus.infra.services.edit;bundle-version="0.9.0",
+ org.eclipse.gmf.runtime.emf.type.core;bundle-version="1.4.0",
+ org.eclipse.papyrus.infra.gmfdiag.css;bundle-version="0.9.0",
+ org.eclipse.emf.databinding;bundle-version="1.2.0",
+ org.eclipse.gmf.runtime.notation;bundle-version="1.5.0",
+ org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="0.9.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/about.html b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/about.html
new file mode 100644
index 00000000000..209103075a7
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/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>November 14, 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/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/build.properties b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/build.properties
new file mode 100644
index 00000000000..8f4f36a63f4
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/build.properties
@@ -0,0 +1,8 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ about.html,\
+ model/
+src.includes = about.html
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/environment.xmi b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/environment.xmi
new file mode 100644
index 00000000000..e6c728fb8c3
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/environment.xmi
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<environment:Environment
+ xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI"
+ xmlns:environment="http://www.eclipse.org/papyrus/properties/environment/0.9">
+ <modelElementFactories
+ name="CSSAnnotationsFactory"
+ factoryClass="org.eclipse.papyrus.infra.gmfdiag.css.properties.modelelement.CSSModelElementFactory"/>
+</environment:Environment>
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/css.ctx b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/css.ctx
new file mode 100644
index 00000000000..a4f5ab667b9
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/css.ctx
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<contexts:Context xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:constraints="http://www.eclipse.org/papyrus/constraints/0.9" xmlns:contexts="http://www.eclipse.org/papyrus/properties/contexts/0.9" name="CSS">
+ <tabs label="Style" id="style" category="org.eclipse.papyrus" image="" priority="70">
+ <sections name="SingleStylableElement" sectionFile="ui/SingleStylableElement.xwt">
+ <widget href="ui/SingleStylableElement.xwt#/"/>
+ </sections>
+ <sections name="MultipleStylableElement" sectionFile="ui/MultipleStylableElement.xwt">
+ <widget href="ui/MultipleStylableElement.xwt#/"/>
+ </sections>
+ <sections name="SingleDiagram" sectionFile="ui/SingleDiagram.xwt">
+ <widget href="ui/SingleDiagram.xwt#/"/>
+ </sections>
+ <sections name="SingleStyleSheetReference" sectionFile="ui/SingleStyleSheetReference.xwt">
+ <widget href="ui/SingleStyleSheetReference.xwt#//@widgets.0"/>
+ </sections>
+ <sections name="SingleEmbeddedStyleSheet" sectionFile="ui/SingleEmbeddedStyleSheet.xwt">
+ <widget href="ui/SingleEmbeddedStyleSheet.xwt#//@widgets.0"/>
+ </sections>
+ </tabs>
+ <views name="SingleStylableElement" sections="//@tabs.0/@sections.0">
+ <constraints xsi:type="constraints:SimpleConstraint" name="isSingleStylableElement" overrideable="false" overriddenConstraints="//@views.1/@constraints.0">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.gmfdiag.properties/model/Environment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" name="nsUri" value="http://www.eclipse.org/gmf/runtime/1.0.2/notation"/>
+ <properties xsi:type="constraints:ValueProperty" name="className" value="View"/>
+ </constraints>
+ </views>
+ <views elementMultiplicity="-1" name="MultipleStylableElement" sections="//@tabs.0/@sections.1">
+ <constraints xsi:type="constraints:SimpleConstraint" name="isMultipleStylableElement" overrideable="false">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.gmfdiag.properties/model/Environment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" name="nsUri" value="http://www.eclipse.org/gmf/runtime/1.0.2/notation"/>
+ <properties xsi:type="constraints:ValueProperty" name="className" value="View"/>
+ </constraints>
+ </views>
+ <views name="Diagram" sections="//@tabs.0/@sections.2 //@tabs.0/@sections.0">
+ <constraints xsi:type="constraints:SimpleConstraint" name="isDiagram" overrideable="false" overriddenConstraints="//@views.0/@constraints.0 //@views.1/@constraints.0">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.gmfdiag.properties/model/Environment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" name="nsUri" value="http://www.eclipse.org/gmf/runtime/1.0.2/notation"/>
+ <properties xsi:type="constraints:ValueProperty" name="className" value="Diagram"/>
+ </constraints>
+ </views>
+ <views name="SingleStyleSheetReference" sections="//@tabs.0/@sections.3">
+ <constraints xsi:type="constraints:SimpleConstraint" name="isStyleSheetReference">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.constraints/Model/ConstraintEnvironment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" name="nsUri" value="http://www.eclipse.org/papyrus/infra/gmfdiag/css"/>
+ <properties xsi:type="constraints:ValueProperty" name="className" value="StyleSheetReference"/>
+ </constraints>
+ </views>
+ <views name="SingleEmbeddedStyleSheet" sections="//@tabs.0/@sections.4">
+ <constraints xsi:type="constraints:SimpleConstraint" name="isEmbeddedStyleSheet">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.constraints/Model/ConstraintEnvironment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" name="nsUri" value="http://www.eclipse.org/papyrus/infra/gmfdiag/css"/>
+ <properties xsi:type="constraints:ValueProperty" name="className" value="EmbeddedStyleSheet"/>
+ </constraints>
+ </views>
+ <dataContexts name="CSS" label="CSS">
+ <elements name="PapyrusCSSStyle">
+ <properties name="cssId" label="CSS ID" description="The CSS ID of this element. The ID should be unique within a Diagram. It can be used to retrieve the style properties applied to this element."/>
+ <properties name="cssClass" label="CSS Classes" multiplicity="-1"/>
+ <properties name="cssStyle" label="CSS Style"/>
+ </elements>
+ <elements name="DiagramStyle" supertypes="//@dataContexts.0/@elements.0">
+ <properties name="styleSheets" label="Diagram style sheets" multiplicity="-1" description="The style sheets associated to this diagram"/>
+ </elements>
+ <elements name="ModelStyleSheet">
+ <properties name="stylesheets" label="Model style sheets" type="Reference" multiplicity="-1" description="The style sheets associated to the model"/>
+ </elements>
+ <modelElementFactory href="ppe:/environment/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/environment.xmi#//@modelElementFactories.0"/>
+ </dataContexts>
+ <dataContexts name="modelstylesheets" label="ModelCSS">
+ <elements name="StyleSheetReference">
+ <properties name="path" description="The path to the external style sheet"/>
+ </elements>
+ <elements name="EmbeddedStyleSheet">
+ <properties name="content" description="The style sheet contents"/>
+ </elements>
+ <modelElementFactory href="ppe:/environment/org.eclipse.papyrus.views.properties/model/Environment.xmi#//@modelElementFactories.0"/>
+ </dataContexts>
+</contexts:Context>
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/MultipleStylableElement.xwt b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/MultipleStylableElement.xwt
new file mode 100644
index 00000000000..9d79d2cb904
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/MultipleStylableElement.xwt
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite xmlns="http://www.eclipse.org/xwt/presentation"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.views.properties.widgets"
+ xmlns:ppel="clr-namespace:org.eclipse.papyrus.views.properties.widgets.layout"
+ xmlns:x="http://www.eclipse.org/xwt">
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <ppe:MultiString input="{Binding}" property="CSS:PapyrusCSSStyle:cssClass"></ppe:MultiString>
+ <ppe:StringMultiline input="{Binding}"
+ property="CSS:PapyrusCSSStyle:cssStyle"></ppe:StringMultiline>
+</Composite> \ No newline at end of file
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleDiagram.xwt b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleDiagram.xwt
new file mode 100644
index 00000000000..97c4e5d0bb7
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleDiagram.xwt
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite
+ xmlns:ppel="clr-namespace:org.eclipse.papyrus.views.properties.widgets.layout"
+ xmlns="http://www.eclipse.org/xwt/presentation" xmlns:ppe="clr-namespace:org.eclipse.papyrus.views.properties.widgets"
+ xmlns:x="http://www.eclipse.org/xwt">
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <Composite>
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <ppe:MultiStringFile input="{Binding}"
+ property="CSS:DiagramStyle:styleSheets"></ppe:MultiStringFile>
+ <ppe:MultiReference input="{Binding}"
+ property="modelstylesheets:ModelStyleSheet:stylesheets"></ppe:MultiReference>
+ </Composite>
+</Composite> \ No newline at end of file
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleEmbeddedStyleSheet.xwt b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleEmbeddedStyleSheet.xwt
new file mode 100644
index 00000000000..96ad9fbcf6c
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleEmbeddedStyleSheet.xwt
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite xmlns:x="http://www.eclipse.org/xwt" xmlns="http://www.eclipse.org/xwt/presentation"
+ xmlns:ppel="clr-namespace:org.eclipse.papyrus.views.properties.widgets.layout"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.views.properties.widgets">
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <Composite>
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <ppe:StringFileSelector property="modelstylesheets:EmbeddedStyleSheet:content"
+ input="{Binding}"></ppe:StringFileSelector>
+ </Composite>
+</Composite> \ No newline at end of file
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleStylableElement.xwt b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleStylableElement.xwt
new file mode 100644
index 00000000000..2449ac11937
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleStylableElement.xwt
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite xmlns="http://www.eclipse.org/xwt/presentation"
+ xmlns:ppel="clr-namespace:org.eclipse.papyrus.views.properties.widgets.layout"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.views.properties.widgets"
+ xmlns:x="http://www.eclipse.org/xwt">
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <Composite>
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <ppe:StringEditor input="{Binding}" property="CSS:PapyrusCSSStyle:cssId"></ppe:StringEditor>
+ </Composite>
+ <Composite>
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="2"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <ppe:MultiString input="{Binding}" property="CSS:PapyrusCSSStyle:cssClass"></ppe:MultiString>
+ <ppe:StringMultiline input="{Binding}"
+ property="CSS:PapyrusCSSStyle:cssStyle"></ppe:StringMultiline>
+ </Composite>
+</Composite> \ No newline at end of file
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleStyleSheetReference.xwt b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleStyleSheetReference.xwt
new file mode 100644
index 00000000000..9174af1d61e
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/model/properties/ui/SingleStyleSheetReference.xwt
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite xmlns:x="http://www.eclipse.org/xwt"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.views.properties.widgets"
+ xmlns:ppel="clr-namespace:org.eclipse.papyrus.views.properties.widgets.layout"
+ xmlns="http://www.eclipse.org/xwt/presentation">
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <Composite>
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <ppe:StringFileSelector property="modelstylesheets:StyleSheetReference:path"
+ input="{Binding}"></ppe:StringFileSelector>
+ </Composite>
+</Composite> \ No newline at end of file
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/plugin.xml b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/plugin.xml
new file mode 100644
index 00000000000..9271bb607cc
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/plugin.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension
+ point="org.eclipse.papyrus.views.properties.context">
+ <context
+ contextModel="model/properties/css.ctx"
+ loadDefault="true">
+ </context>
+ </extension>
+ <extension
+ point="org.eclipse.papyrus.views.properties.environment">
+ <environment
+ environmentModel="model/environment.xmi">
+ </environment>
+ </extension>
+
+</plugin>
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/Activator.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/Activator.java
new file mode 100644
index 00000000000..b5c3fc2c65a
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/Activator.java
@@ -0,0 +1,69 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.properties;
+
+import org.eclipse.papyrus.infra.core.log.LogHelper;
+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.papyrus.infra.gmfdiag.css.properties"; //$NON-NLS-1$
+
+ // The shared instance
+ private static Activator plugin;
+
+ public static LogHelper log;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ log = new LogHelper(this);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/databinding/CSSClassObservableList.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/databinding/CSSClassObservableList.java
new file mode 100644
index 00000000000..32d501d6573
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/databinding/CSSClassObservableList.java
@@ -0,0 +1,128 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.properties.databinding;
+
+import java.text.Collator;
+import java.util.ArrayList;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.core.databinding.observable.ChangeEvent;
+import org.eclipse.core.databinding.observable.Diffs;
+import org.eclipse.core.databinding.observable.IChangeListener;
+import org.eclipse.core.databinding.observable.list.ListDiff;
+import org.eclipse.core.databinding.observable.list.ListDiffEntry;
+import org.eclipse.core.databinding.observable.list.WritableList;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.infra.emf.databinding.AnnotationObservableValue;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSAnnotations;
+import org.eclipse.papyrus.infra.widgets.editors.AbstractEditor;
+import org.eclipse.papyrus.infra.widgets.editors.ICommitListener;
+
+/**
+ * An ObservableList containing a list of classes. When commit is called,
+ * the list is concatenated in a space-separated String.
+ *
+ * @author Camille Letavernier
+ */
+public class CSSClassObservableList extends WritableList implements ICommitListener, IChangeListener {
+
+ private AnnotationObservableValue observable;
+
+ protected EditingDomain domain;
+
+ protected EModelElement source;
+
+ private String currentValue = null;
+
+ public CSSClassObservableList(EditingDomain domain, EModelElement source) {
+ super(new LinkedList<String>(), String.class);
+ this.domain = domain;
+ this.source = source;
+ observable = new AnnotationObservableValue(source, domain, CSSAnnotations.CSS_ANNOTATION, CSSAnnotations.CSS_GMF_CLASS_KEY);
+ observable.addChangeListener(this);
+ parseValue(false);
+ }
+
+ public void commit(AbstractEditor editor) {
+ String value = getStringValue();
+
+ observable.setValue(value);
+ }
+
+ public void handleChange(ChangeEvent event) {
+ String oldValue = currentValue;
+ String newValue = (String)observable.getValue();
+ if(Collator.getInstance().equals(oldValue, newValue)) {
+ return;
+ }
+
+ parseValue(true);
+ }
+
+ protected String getStringValue() {
+ String value = "";
+ for(Object cssClassObject : this) {
+ String cssClass = (String)cssClassObject;
+ value += cssClass + " ";
+ }
+
+ if(value.equals("")) {
+ value = null; //Unset the annotation key
+ } else {
+ value = value.trim(); //remove the trailing space
+ }
+
+ return value;
+ }
+
+ protected void parseValue(boolean isChange) {
+ currentValue = (String)observable.getValue();
+ if(currentValue == null) {
+ if(isChange) {
+ clear();
+ } else {
+ this.wrappedList.clear();
+ }
+ return;
+ }
+
+ String[] values = currentValue.split("\\s");
+ List<String> valuesList = new ArrayList<String>(values.length);
+ for(String currentValue : values) {
+ if(!currentValue.isEmpty()) {
+ valuesList.add(currentValue);
+ }
+ }
+
+ final List previousList = new LinkedList(wrappedList);
+
+ this.wrappedList.clear();
+ this.wrappedList.addAll(valuesList);
+
+ if(isChange) {
+
+ final List newList = new LinkedList(wrappedList);
+ final ListDiffEntry[] differences = Diffs.computeListDiff(previousList, newList).getDifferences();
+
+ fireListChange(new ListDiff() {
+
+ @Override
+ public ListDiffEntry[] getDifferences() {
+ return differences;
+ }
+
+ });
+ }
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/CSSModelElement.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/CSSModelElement.java
new file mode 100644
index 00000000000..43a5fa7c85c
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/CSSModelElement.java
@@ -0,0 +1,38 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.properties.modelelement;
+
+import org.eclipse.core.databinding.observable.IObservable;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSAnnotations;
+import org.eclipse.papyrus.infra.gmfdiag.css.properties.databinding.CSSClassObservableList;
+import org.eclipse.papyrus.views.properties.modelelement.AnnotationModelElement;
+
+
+public class CSSModelElement extends AnnotationModelElement {
+
+ public CSSModelElement(EModelElement source, EditingDomain domain) {
+ super(source, domain, CSSAnnotations.CSS_ANNOTATION);
+ }
+
+ @Override
+ public IObservable doGetObservable(String propertyPath) {
+ if(propertyPath.equals(CSSAnnotations.CSS_GMF_CLASS_KEY)) {
+ return new CSSClassObservableList(domain, source);
+ }
+ if(propertyPath.equals(CSSAnnotations.CSS_DIAGRAM_STYLESHEETS_KEY)) {
+ return null; //Unsupported yet
+ }
+ return super.doGetObservable(propertyPath);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/CSSModelElementFactory.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/CSSModelElementFactory.java
new file mode 100644
index 00000000000..d8a69b2fa5b
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/CSSModelElementFactory.java
@@ -0,0 +1,70 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.properties.modelelement;
+
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheets;
+import org.eclipse.papyrus.infra.gmfdiag.css.properties.Activator;
+import org.eclipse.papyrus.views.properties.contexts.DataContextElement;
+import org.eclipse.papyrus.views.properties.modelelement.ModelElement;
+import org.eclipse.papyrus.views.properties.modelelement.ModelElementFactory;
+import org.eclipse.papyrus.infra.gmfdiag.common.helper.NotationHelper;
+
+public class CSSModelElementFactory implements ModelElementFactory {
+
+ public ModelElement createFromSource(Object sourceElement, DataContextElement context) {
+
+ View source = NotationHelper.findView(sourceElement);
+ if(source == null) {
+ Activator.log.warn("Unable to resolve the selected element to a GMF View"); //$NON-NLS-1$
+ return null;
+ }
+
+ EditingDomain domain = AdapterFactoryEditingDomain.getEditingDomainFor(source);
+
+ //Style EObject (For ModelStyleSheets)
+ if("ModelStyleSheets".equals(context.getName())) {
+ return null;
+ //ModelStyleSheets cssModel = findCSSModel(source);
+ //if(cssModel == null) {
+ // Activator.log.warn("Cannot find the CSSModelElement associated to this object");
+ // return new ModelStyleSheetsModelElement(source, domain);
+ //}
+ //return new EMFModelElement(cssModel, domain);
+ }
+
+ //Style EAnnotation (For all other CSS properties)
+ if(!(source instanceof EModelElement)) {
+ Activator.log.warn("The selected element must be an EModelElement"); //$NON-NLS-1$
+ return null;
+ }
+
+ return new CSSModelElement(source, domain);
+ }
+
+ protected ModelStyleSheets findCSSModel(EObject source) {
+ Resource resource = source.eResource();
+ if(resource != null) {
+ for(EObject rootElement : resource.getContents()) {
+ if(rootElement instanceof ModelStyleSheets) {
+ return (ModelStyleSheets)rootElement;
+ }
+ }
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/ModelStyleSheetsModelElement.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/ModelStyleSheetsModelElement.java
new file mode 100644
index 00000000000..05954bf1874
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css.properties/src/org/eclipse/papyrus/infra/gmfdiag/css/properties/modelelement/ModelStyleSheetsModelElement.java
@@ -0,0 +1,25 @@
+package org.eclipse.papyrus.infra.gmfdiag.css.properties.modelelement;
+
+import org.eclipse.core.databinding.observable.IObservable;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.views.properties.modelelement.EMFModelElement;
+import org.eclipse.papyrus.views.properties.modelelement.ModelElement;
+
+
+public class ModelStyleSheetsModelElement extends EMFModelElement implements ModelElement {
+
+ public ModelStyleSheetsModelElement(EObject source) {
+ super(source);
+ }
+
+ public ModelStyleSheetsModelElement(EObject source, EditingDomain domain) {
+ super(source, domain);
+ }
+
+ @Override
+ public IObservable getObservable(String propertyPath) {
+ return new ModelStyleSheetsObservableValue(source, propertyPath);
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/.classpath b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/.classpath
new file mode 100644
index 00000000000..9c0318f0fd2
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src-gen"/>
+ <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/incoming/org.eclipse.papyrus.infra.gmfdiag.css/.project b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/.project
new file mode 100644
index 00000000000..f07c14c7414
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.infra.gmfdiag.css</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/incoming/org.eclipse.papyrus.infra.gmfdiag.css/.settings/org.eclipse.jdt.core.prefs b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..44217f8c068
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/.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/incoming/org.eclipse.papyrus.infra.gmfdiag.css/META-INF/MANIFEST.MF b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..5e4a2100168
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/META-INF/MANIFEST.MF
@@ -0,0 +1,35 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.infra.gmfdiag.css;singleton:=true
+Bundle-Version: 0.9.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.infra.gmfdiag.css.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.e4.ui.css.core;bundle-version="0.10.0",
+ org.eclipse.emf.ecore;bundle-version="2.8.0",
+ org.eclipse.papyrus.infra.emf;bundle-version="0.9.0",
+ org.eclipse.papyrus.infra.core.log;bundle-version="0.9.0",
+ org.eclipse.gmf.runtime.diagram.ui;bundle-version="1.5.0",
+ org.w3c.css.sac;bundle-version="1.3.1",
+ org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="0.9.0",
+ org.eclipse.gmf.runtime.notation.edit;bundle-version="1.4.0",
+ org.eclipse.papyrus.infra.core;bundle-version="0.9.0",
+ org.eclipse.papyrus.infra.emf.appearance;bundle-version="0.9.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.infra.gmfdiag.css,
+ org.eclipse.papyrus.infra.gmfdiag.css.converters,
+ org.eclipse.papyrus.infra.gmfdiag.css.dom,
+ org.eclipse.papyrus.infra.gmfdiag.css.engine,
+ org.eclipse.papyrus.infra.gmfdiag.css.engine.enginecopy,
+ org.eclipse.papyrus.infra.gmfdiag.css.helper,
+ org.eclipse.papyrus.infra.gmfdiag.css.listener,
+ org.eclipse.papyrus.infra.gmfdiag.css.lists,
+ org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets,
+ org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl,
+ org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.util,
+ org.eclipse.papyrus.infra.gmfdiag.css.notation,
+ org.eclipse.papyrus.infra.gmfdiag.css.style.impl
+Bundle-Localization: plugin
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/about.html b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/about.html
new file mode 100644
index 00000000000..209103075a7
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/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>November 14, 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/incoming/org.eclipse.papyrus.infra.gmfdiag.css/build.properties b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/build.properties
new file mode 100644
index 00000000000..4a9ba94d739
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/build.properties
@@ -0,0 +1,10 @@
+source.. = src/,src-gen/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ about.html,\
+ plugin.xml,\
+ plugin.properties,\
+ model/,\
+ resources/
+src.includes = about.html
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/model/ModelStyleSheets.ecore b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/model/ModelStyleSheets.ecore
new file mode 100644
index 00000000000..d3ce2874f7e
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/model/ModelStyleSheets.ecore
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="modelstylesheets" nsURI="http://www.eclipse.org/papyrus/infra/gmfdiag/css"
+ nsPrefix="css">
+ <eClassifiers xsi:type="ecore:EClass" name="ModelStyleSheets" eSuperTypes="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EModelElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="stylesheets" upperBound="-1"
+ eType="#//StyleSheet" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StyleSheet" abstract="true"/>
+ <eClassifiers xsi:type="ecore:EClass" name="StyleSheetReference" eSuperTypes="#//StyleSheet">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="path" lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="EmbeddedStyleSheet" eSuperTypes="#//StyleSheet">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="content" lowerBound="1"
+ eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/model/ModelStyleSheets.genmodel b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/model/ModelStyleSheets.genmodel
new file mode 100644
index 00000000000..a89cfd7a9d9
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/model/ModelStyleSheets.genmodel
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.papyrus.infra.gmfdiag.css/src-gen"
+ editorDirectory="/org.eclipse.papyrus.infra.gmfdiag.css.editor/src-gen" modelPluginID="org.eclipse.papyrus.infra.gmfdiag.css"
+ modelName="ModelStyleSheets" testsDirectory="/org.eclipse.papyrus.infra.gmfdiag.css.tests/src-gen"
+ importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0" copyrightFields="false"
+ usedGenPackages="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore">
+ <foreignModel>ModelStyleSheets.ecore</foreignModel>
+ <genPackages prefix="ModelStyleSheets" basePackage="org.eclipse.papyrus.infra.gmfdiag.css"
+ disposableProviderFactory="true" ecorePackage="ModelStyleSheets.ecore#/">
+ <genClasses ecoreClass="ModelStyleSheets.ecore#//ModelStyleSheets">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference ModelStyleSheets.ecore#//ModelStyleSheets/stylesheets"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="ModelStyleSheets.ecore#//StyleSheet"/>
+ <genClasses ecoreClass="ModelStyleSheets.ecore#//StyleSheetReference">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute ModelStyleSheets.ecore#//StyleSheetReference/path"/>
+ </genClasses>
+ <genClasses ecoreClass="ModelStyleSheets.ecore#//EmbeddedStyleSheet">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute ModelStyleSheets.ecore#//EmbeddedStyleSheet/content"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/plugin.properties b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/plugin.properties
new file mode 100644
index 00000000000..f944432c9bc
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/plugin.properties
@@ -0,0 +1,5 @@
+#Properties file for org.eclipse.papyrus.infra.gmfdiag.css
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = Diagram CSS
+pluginName = ModelStyleSheets Model
+providerName = www.example.org
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/plugin.xml b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/plugin.xml
new file mode 100644
index 00000000000..920366cad44
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/plugin.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension point="org.eclipse.emf.ecore.factory_override">
+ <factory
+ class="org.eclipse.papyrus.infra.gmfdiag.css.factory.CSSNotationFactory"
+ uri="http://www.eclipse.org/gmf/runtime/1.0.2/notation">
+ </factory>
+ </extension>
+ <extension point="org.eclipse.papyrus.infra.core.model">
+ <model
+ classname="org.eclipse.papyrus.infra.gmfdiag.css.resource.CSSNotationModel"
+ description="Notation Model with CSS Support">
+ </model>
+ </extension>
+ <extension point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.papyrus.infra.gmfdiag.css.handler.CSSRefreshHandler"
+ commandId="org.eclipse.ui.file.refresh">
+ <activeWhen>
+ <and>
+ <with variable="activePartId">
+ <equals value="org.eclipse.papyrus.infra.core.papyrusEditor">
+ </equals>
+ </with>
+ <with variable="activeContexts">
+ <iterate ifEmpty="false" operator="or">
+ <equals value="Papyrus CSS">
+ </equals>
+ </iterate>
+ </with>
+ </and>
+ </activeWhen>
+ </handler>
+ </extension>
+ <extension
+ point="org.eclipse.ui.contexts">
+ <context
+ description="A context used to indicate that the Papyrus CSS support is available"
+ id="Papyrus CSS"
+ name="Papyrus CSS context">
+ </context>
+ </extension>
+ <extension
+ point="org.eclipse.emf.ecore.generated_package">
+ <package
+ class="org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage"
+ genModel="model/ModelStyleSheets.genmodel"
+ uri="http://www.eclipse.org/papyrus/infra/gmfdiag/css">
+ </package>
+ </extension>
+ <extension
+ point="org.eclipse.papyrus.infra.emf.appearance.styleProvider">
+ <styleprovider
+ priority="40"
+ styleProvider="org.eclipse.papyrus.infra.gmfdiag.css.provider.CSSAppearanceProvider">
+ </styleprovider>
+ </extension>
+</plugin>
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/resources/base.css b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/resources/base.css
new file mode 100644
index 00000000000..6c3a7a8a91e
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/resources/base.css
@@ -0,0 +1,22 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr
+ *****************************************************************************/
+
+/**
+
+This stylesheets declares the default style options for Papyrus. It mostly contains hacks to avoid
+unwished behaviors, related to the base implementation (GMF, Papyrus...)
+
+*/
+
+* {
+ lineColor:black; /* Avoid the gray line-colors from default GMF connectors */
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/resources/papyrus_theme.css b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/resources/papyrus_theme.css
new file mode 100644
index 00000000000..9812e06765d
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/resources/papyrus_theme.css
@@ -0,0 +1,102 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr
+ *****************************************************************************/
+
+/*
+ * Papyrus CSS v0.9
+ * Sample
+ */
+
+* {
+
+ /**
+ * GMF Display
+ */
+
+ fontColor: black;
+ fillColor:#C3D1DC;
+
+ /* fontHeight:9; */
+
+ /**
+ * Gradient
+ */
+
+ /* gradientColor:white; */
+ /* gradientStyle:vertical; */
+
+ /*
+ * Global gradient (Equivalent to the latter)
+ */
+
+ gradient: white vertical; /* vertical white; is currently invalid */
+
+ /*
+ * Global gradient (2)
+ * Unsupported by diagrams (Color2 is unused)
+ */
+
+ /* gradient:white blue vertical */
+
+ /**
+ * UML Display
+ */
+
+ elementIcon: true;
+ /* shadow:false; */
+ /* qualifiedNameDepth:Full; */
+
+ /**
+ * UML Stereotypes display
+ */
+
+ /* stereotypeDisplay:"Text and Icon"; */
+ /* textAlignment:Vertical; */
+ /* displayPlace:"With brace"; */
+}
+
+Class {
+ fillColor: #C3D7DD;
+ lineColor: black;
+}
+
+Interface{
+ fillColor:#FAFAFC;
+}
+
+Class[isAbstract=true], Class[isAbstract=true] *{
+ fillColor:#E4E4E7;
+ fontColor:gray;
+}
+
+Port {
+ fillColor: #C8D9F5;
+ lineColor: black;
+}
+
+Comment {
+ fillColor: #FFFFDD;
+ gradient: #FFFFFC vertical;
+}
+
+Constraint {
+ fillColor: #C8FFE6;
+}
+
+Package {
+ fillColor: white;
+}
+
+.external { /* Elements tagged as external (ie. imported) */
+ fillColor: rgb(255, 192, 192);
+ qualifiedNameDepth: full;
+}
+ \ No newline at end of file
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSArrowStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSArrowStyleImpl.java
new file mode 100644
index 00000000000..a3bba0f1a5e
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSArrowStyleImpl.java
@@ -0,0 +1,133 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.ArrowType;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.ArrowStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSArrowStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSArrowStyleDelegate;
+
+public class CSSArrowStyleImpl extends ArrowStyleImpl implements CSSArrowStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSArrowStyle arrowStyle;
+
+ protected CSSArrowStyle getArrowStyle() {
+ if(arrowStyle == null) {
+ arrowStyle = new CSSArrowStyleDelegate(this, getEngine());
+ }
+ return arrowStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public ArrowType getCSSArrowSource(){
+ ArrowType value = super.getArrowSource();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getArrowStyle_ArrowSource(), value)){
+ return value;
+ } else {
+ return getArrowStyle().getCSSArrowSource();
+ }
+ }
+
+ public ArrowType getCSSArrowTarget(){
+ ArrowType value = super.getArrowTarget();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getArrowStyle_ArrowTarget(), value)){
+ return value;
+ } else {
+ return getArrowStyle().getCSSArrowTarget();
+ }
+ }
+
+
+ @Override
+ public ArrowType getArrowSource(){
+ //return super.getArrowSource();
+ return getCSSArrowSource();
+ }
+
+ @Override
+ public ArrowType getArrowTarget(){
+ //return super.getArrowTarget();
+ return getCSSArrowTarget();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setArrowSource(ArrowType value){
+ super.setArrowSource(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getArrowStyle_ArrowSource();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setArrowTarget(ArrowType value){
+ super.setArrowTarget(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getArrowStyle_ArrowTarget();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBasicCompartmentImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBasicCompartmentImpl.java
new file mode 100644
index 00000000000..7a028fd1b19
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBasicCompartmentImpl.java
@@ -0,0 +1,117 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.impl.BasicCompartmentImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDrawerStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDrawerStyleDelegate;
+
+public class CSSBasicCompartmentImpl extends BasicCompartmentImpl implements CSSDrawerStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDrawerStyle drawerStyle;
+
+ protected CSSDrawerStyle getDrawerStyle() {
+ if(drawerStyle == null) {
+ drawerStyle = new CSSDrawerStyleDelegate(this, getEngine());
+ }
+ return drawerStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine() {
+ if(engine == null) {
+ engine = ((CSSDiagramImpl)getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public boolean isCSSCollapsed(){
+ boolean value = super.isCollapsed();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getDrawerStyle_Collapsed(), value)){
+ return value;
+ } else {
+ return getDrawerStyle().isCSSCollapsed();
+ }
+ }
+
+
+ @Override
+ public boolean isCollapsed(){
+ //return super.isCollapsed();
+ return isCSSCollapsed();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setVisible(boolean value){
+ super.setVisible(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Visible();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setType(java.lang.String value){
+ super.setType(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Type();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setMutable(boolean value){
+ super.setMutable(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Mutable();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setCollapsed(boolean value){
+ super.setCollapsed(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDrawerStyle_Collapsed();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(this, feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBasicSemanticCompartmentImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBasicSemanticCompartmentImpl.java
new file mode 100644
index 00000000000..4f67e2ae126
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBasicSemanticCompartmentImpl.java
@@ -0,0 +1,117 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.impl.BasicSemanticCompartmentImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDrawerStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDrawerStyleDelegate;
+
+public class CSSBasicSemanticCompartmentImpl extends BasicSemanticCompartmentImpl implements CSSDrawerStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDrawerStyle drawerStyle;
+
+ protected CSSDrawerStyle getDrawerStyle() {
+ if(drawerStyle == null) {
+ drawerStyle = new CSSDrawerStyleDelegate(this, getEngine());
+ }
+ return drawerStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine() {
+ if(engine == null) {
+ engine = ((CSSDiagramImpl)getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public boolean isCSSCollapsed(){
+ boolean value = super.isCollapsed();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getDrawerStyle_Collapsed(), value)){
+ return value;
+ } else {
+ return getDrawerStyle().isCSSCollapsed();
+ }
+ }
+
+
+ @Override
+ public boolean isCollapsed(){
+ //return super.isCollapsed();
+ return isCSSCollapsed();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setVisible(boolean value){
+ super.setVisible(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Visible();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setType(java.lang.String value){
+ super.setType(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Type();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setMutable(boolean value){
+ super.setMutable(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Mutable();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setCollapsed(boolean value){
+ super.setCollapsed(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDrawerStyle_Collapsed();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(this, feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBooleanListValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBooleanListValueStyleImpl.java
new file mode 100644
index 00000000000..d30271da794
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBooleanListValueStyleImpl.java
@@ -0,0 +1,125 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.BooleanListValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSBooleanListValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSBooleanListValueStyleDelegate;
+
+public class CSSBooleanListValueStyleImpl extends BooleanListValueStyleImpl implements CSSBooleanListValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSBooleanListValueStyle booleanListValueStyle;
+
+ protected CSSBooleanListValueStyle getBooleanListValueStyle() {
+ if(booleanListValueStyle == null) {
+ booleanListValueStyle = new CSSBooleanListValueStyleDelegate(this, getEngine());
+ }
+ return booleanListValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine() {
+ if(engine == null) {
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView() {
+ EObject parent = eContainer();
+ while(!(parent instanceof View) && parent != null) {
+ parent = parent.eContainer();
+ }
+
+ if(parent != null) {
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName() {
+ java.lang.String value = super.getName();
+
+ if(ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)) {
+ return value;
+ } else {
+ return getBooleanListValueStyle().getCSSName();
+ }
+ }
+
+ public EList getCSSBooleanListValue() {
+ EList value = super.getBooleanListValue();
+
+ if(ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getBooleanListValueStyle_BooleanListValue(), value)) {
+ return value;
+ } else {
+ return getBooleanListValueStyle().getCSSBooleanListValue();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName() {
+ //return super.getName();
+ return getCSSName();
+ }
+
+ @Override
+ public EList getBooleanListValue() {
+ //return super.getBooleanListValue();
+ return getCSSBooleanListValue();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value) {
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBooleanValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBooleanValueStyleImpl.java
new file mode 100644
index 00000000000..463c2c69f30
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSBooleanValueStyleImpl.java
@@ -0,0 +1,132 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.BooleanValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSBooleanValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSBooleanValueStyleDelegate;
+
+public class CSSBooleanValueStyleImpl extends BooleanValueStyleImpl implements CSSBooleanValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSBooleanValueStyle booleanValueStyle;
+
+ protected CSSBooleanValueStyle getBooleanValueStyle() {
+ if(booleanValueStyle == null) {
+ booleanValueStyle = new CSSBooleanValueStyleDelegate(this, getEngine());
+ }
+ return booleanValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getBooleanValueStyle().getCSSName();
+ }
+ }
+
+ public boolean isCSSBooleanValue(){
+ boolean value = super.isBooleanValue();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getBooleanValueStyle_BooleanValue(), value)){
+ return value;
+ } else {
+ return getBooleanValueStyle().isCSSBooleanValue();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+ @Override
+ public boolean isBooleanValue(){
+ //return super.isBooleanValue();
+ return isCSSBooleanValue();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setBooleanValue(boolean value){
+ super.setBooleanValue(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getBooleanValueStyle_BooleanValue();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSByteArrayValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSByteArrayValueStyleImpl.java
new file mode 100644
index 00000000000..c8935b9e417
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSByteArrayValueStyleImpl.java
@@ -0,0 +1,132 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.ByteArrayValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSByteArrayValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSByteArrayValueStyleDelegate;
+
+public class CSSByteArrayValueStyleImpl extends ByteArrayValueStyleImpl implements CSSByteArrayValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSByteArrayValueStyle byteArrayValueStyle;
+
+ protected CSSByteArrayValueStyle getByteArrayValueStyle() {
+ if(byteArrayValueStyle == null) {
+ byteArrayValueStyle = new CSSByteArrayValueStyleDelegate(this, getEngine());
+ }
+ return byteArrayValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getByteArrayValueStyle().getCSSName();
+ }
+ }
+
+ public byte[] getCSSByteArrayValue(){
+ byte[] value = super.getByteArrayValue();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getByteArrayValueStyle_ByteArrayValue(), value)){
+ return value;
+ } else {
+ return getByteArrayValueStyle().getCSSByteArrayValue();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+ @Override
+ public byte[] getByteArrayValue(){
+ //return super.getByteArrayValue();
+ return getCSSByteArrayValue();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setByteArrayValue(byte[] value){
+ super.setByteArrayValue(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getByteArrayValueStyle_ByteArrayValue();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSCanonicalStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSCanonicalStyleImpl.java
new file mode 100644
index 00000000000..4d48ffded98
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSCanonicalStyleImpl.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.CanonicalStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSCanonicalStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSCanonicalStyleDelegate;
+
+public class CSSCanonicalStyleImpl extends CanonicalStyleImpl implements CSSCanonicalStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSCanonicalStyle canonicalStyle;
+
+ protected CSSCanonicalStyle getCanonicalStyle() {
+ if(canonicalStyle == null) {
+ canonicalStyle = new CSSCanonicalStyleDelegate(this, getEngine());
+ }
+ return canonicalStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public boolean isCSSCanonical(){
+ boolean value = super.isCanonical();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getCanonicalStyle_Canonical(), value)){
+ return value;
+ } else {
+ return getCanonicalStyle().isCSSCanonical();
+ }
+ }
+
+
+ @Override
+ public boolean isCanonical(){
+ //return super.isCanonical();
+ return isCSSCanonical();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setCanonical(boolean value){
+ super.setCanonical(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getCanonicalStyle_Canonical();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSCompartmentImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSCompartmentImpl.java
new file mode 100644
index 00000000000..c37f4b4d777
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSCompartmentImpl.java
@@ -0,0 +1,133 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.impl.CompartmentImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDrawerStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDrawerStyleDelegate;
+
+public class CSSCompartmentImpl extends CompartmentImpl implements CSSDrawerStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDrawerStyle drawerStyle;
+
+ protected CSSDrawerStyle getDrawerStyle() {
+ if(drawerStyle == null) {
+ drawerStyle = new CSSDrawerStyleDelegate(this, getEngine());
+ }
+ return drawerStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine() {
+ if(engine == null) {
+ engine = ((CSSDiagramImpl)getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public boolean isCSSCollapsed(){
+ boolean value = super.isCollapsed();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getDrawerStyle_Collapsed(), value)){
+ return value;
+ } else {
+ return getDrawerStyle().isCSSCollapsed();
+ }
+ }
+
+
+ @Override
+ public boolean isCollapsed(){
+ //return super.isCollapsed();
+ return isCSSCollapsed();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setVisible(boolean value){
+ super.setVisible(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Visible();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setType(java.lang.String value){
+ super.setType(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Type();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setMutable(boolean value){
+ super.setMutable(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Mutable();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setCollapsed(boolean value){
+ super.setCollapsed(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDrawerStyle_Collapsed();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setCanonical(boolean value){
+ super.setCanonical(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getCanonicalStyle_Canonical();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setShowTitle(boolean value){
+ super.setShowTitle(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getTitleStyle_ShowTitle();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(this, feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSConnectorImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSConnectorImpl.java
new file mode 100644
index 00000000000..7b9ba46f940
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSConnectorImpl.java
@@ -0,0 +1,337 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.JumpLinkStatus;
+import org.eclipse.gmf.runtime.notation.JumpLinkType;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.Routing;
+import org.eclipse.gmf.runtime.notation.Smoothness;
+import org.eclipse.gmf.runtime.notation.impl.ConnectorImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSConnectorStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSConnectorStyleDelegate;
+
+public class CSSConnectorImpl extends ConnectorImpl implements CSSConnectorStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSConnectorStyle connectorStyle;
+
+ protected CSSConnectorStyle getConnectorStyle() {
+ if(connectorStyle == null) {
+ connectorStyle = new CSSConnectorStyleDelegate(this, getEngine());
+ }
+ return connectorStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine() {
+ if(engine == null) {
+ engine = ((CSSDiagramImpl)getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public int getCSSRoundedBendpointsRadius(){
+ int value = super.getRoundedBendpointsRadius();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSRoundedBendpointsRadius();
+ }
+ }
+
+ public Routing getCSSRouting(){
+ Routing value = super.getRouting();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getRoutingStyle_Routing(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSRouting();
+ }
+ }
+
+ public Smoothness getCSSSmoothness(){
+ Smoothness value = super.getSmoothness();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getRoutingStyle_Smoothness(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSSmoothness();
+ }
+ }
+
+ public boolean isCSSAvoidObstructions(){
+ boolean value = super.isAvoidObstructions();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getRoutingStyle_AvoidObstructions(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().isCSSAvoidObstructions();
+ }
+ }
+
+ public boolean isCSSClosestDistance(){
+ boolean value = super.isClosestDistance();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getRoutingStyle_ClosestDistance(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().isCSSClosestDistance();
+ }
+ }
+
+ public JumpLinkStatus getCSSJumpLinkStatus(){
+ JumpLinkStatus value = super.getJumpLinkStatus();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkStatus(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSJumpLinkStatus();
+ }
+ }
+
+ public JumpLinkType getCSSJumpLinkType(){
+ JumpLinkType value = super.getJumpLinkType();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkType(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSJumpLinkType();
+ }
+ }
+
+ public boolean isCSSJumpLinksReverse(){
+ boolean value = super.isJumpLinksReverse();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getRoutingStyle_JumpLinksReverse(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().isCSSJumpLinksReverse();
+ }
+ }
+
+ public int getCSSLineColor(){
+ int value = super.getLineColor();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getLineStyle_LineColor(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSLineColor();
+ }
+ }
+
+ public int getCSSLineWidth(){
+ int value = super.getLineWidth();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getLineStyle_LineWidth(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSLineWidth();
+ }
+ }
+
+
+ @Override
+ public int getRoundedBendpointsRadius(){
+ //return super.getRoundedBendpointsRadius();
+ return getCSSRoundedBendpointsRadius();
+ }
+
+ @Override
+ public Routing getRouting(){
+ //return super.getRouting();
+ return getCSSRouting();
+ }
+
+ @Override
+ public Smoothness getSmoothness(){
+ //return super.getSmoothness();
+ return getCSSSmoothness();
+ }
+
+ @Override
+ public boolean isAvoidObstructions(){
+ //return super.isAvoidObstructions();
+ return isCSSAvoidObstructions();
+ }
+
+ @Override
+ public boolean isClosestDistance(){
+ //return super.isClosestDistance();
+ return isCSSClosestDistance();
+ }
+
+ @Override
+ public JumpLinkStatus getJumpLinkStatus(){
+ //return super.getJumpLinkStatus();
+ return getCSSJumpLinkStatus();
+ }
+
+ @Override
+ public JumpLinkType getJumpLinkType(){
+ //return super.getJumpLinkType();
+ return getCSSJumpLinkType();
+ }
+
+ @Override
+ public boolean isJumpLinksReverse(){
+ //return super.isJumpLinksReverse();
+ return isCSSJumpLinksReverse();
+ }
+
+ @Override
+ public int getLineColor(){
+ //return super.getLineColor();
+ return getCSSLineColor();
+ }
+
+ @Override
+ public int getLineWidth(){
+ //return super.getLineWidth();
+ return getCSSLineWidth();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setVisible(boolean value){
+ super.setVisible(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Visible();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setType(java.lang.String value){
+ super.setType(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Type();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setMutable(boolean value){
+ super.setMutable(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Mutable();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setRoundedBendpointsRadius(int value){
+ super.setRoundedBendpointsRadius(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setRouting(Routing value){
+ super.setRouting(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_Routing();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setSmoothness(Smoothness value){
+ super.setSmoothness(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_Smoothness();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setAvoidObstructions(boolean value){
+ super.setAvoidObstructions(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_AvoidObstructions();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setClosestDistance(boolean value){
+ super.setClosestDistance(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_ClosestDistance();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setJumpLinkStatus(JumpLinkStatus value){
+ super.setJumpLinkStatus(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkStatus();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setJumpLinkType(JumpLinkType value){
+ super.setJumpLinkType(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkType();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setJumpLinksReverse(boolean value){
+ super.setJumpLinksReverse(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinksReverse();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setLineColor(int value){
+ super.setLineColor(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getLineStyle_LineColor();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setLineWidth(int value){
+ super.setLineWidth(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getLineStyle_LineWidth();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(this, feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSConnectorStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSConnectorStyleImpl.java
new file mode 100644
index 00000000000..449bd55174d
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSConnectorStyleImpl.java
@@ -0,0 +1,328 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.JumpLinkStatus;
+import org.eclipse.gmf.runtime.notation.JumpLinkType;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.Routing;
+import org.eclipse.gmf.runtime.notation.Smoothness;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.ConnectorStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSConnectorStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSConnectorStyleDelegate;
+
+public class CSSConnectorStyleImpl extends ConnectorStyleImpl implements CSSConnectorStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSConnectorStyle connectorStyle;
+
+ protected CSSConnectorStyle getConnectorStyle() {
+ if(connectorStyle == null) {
+ connectorStyle = new CSSConnectorStyleDelegate(this, getEngine());
+ }
+ return connectorStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public int getCSSRoundedBendpointsRadius(){
+ int value = super.getRoundedBendpointsRadius();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSRoundedBendpointsRadius();
+ }
+ }
+
+ public Routing getCSSRouting(){
+ Routing value = super.getRouting();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_Routing(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSRouting();
+ }
+ }
+
+ public Smoothness getCSSSmoothness(){
+ Smoothness value = super.getSmoothness();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_Smoothness(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSSmoothness();
+ }
+ }
+
+ public boolean isCSSAvoidObstructions(){
+ boolean value = super.isAvoidObstructions();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_AvoidObstructions(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().isCSSAvoidObstructions();
+ }
+ }
+
+ public boolean isCSSClosestDistance(){
+ boolean value = super.isClosestDistance();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_ClosestDistance(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().isCSSClosestDistance();
+ }
+ }
+
+ public JumpLinkStatus getCSSJumpLinkStatus(){
+ JumpLinkStatus value = super.getJumpLinkStatus();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkStatus(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSJumpLinkStatus();
+ }
+ }
+
+ public JumpLinkType getCSSJumpLinkType(){
+ JumpLinkType value = super.getJumpLinkType();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkType(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSJumpLinkType();
+ }
+ }
+
+ public boolean isCSSJumpLinksReverse(){
+ boolean value = super.isJumpLinksReverse();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_JumpLinksReverse(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().isCSSJumpLinksReverse();
+ }
+ }
+
+ public int getCSSLineColor(){
+ int value = super.getLineColor();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getLineStyle_LineColor(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSLineColor();
+ }
+ }
+
+ public int getCSSLineWidth(){
+ int value = super.getLineWidth();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getLineStyle_LineWidth(), value)){
+ return value;
+ } else {
+ return getConnectorStyle().getCSSLineWidth();
+ }
+ }
+
+
+ @Override
+ public int getRoundedBendpointsRadius(){
+ //return super.getRoundedBendpointsRadius();
+ return getCSSRoundedBendpointsRadius();
+ }
+
+ @Override
+ public Routing getRouting(){
+ //return super.getRouting();
+ return getCSSRouting();
+ }
+
+ @Override
+ public Smoothness getSmoothness(){
+ //return super.getSmoothness();
+ return getCSSSmoothness();
+ }
+
+ @Override
+ public boolean isAvoidObstructions(){
+ //return super.isAvoidObstructions();
+ return isCSSAvoidObstructions();
+ }
+
+ @Override
+ public boolean isClosestDistance(){
+ //return super.isClosestDistance();
+ return isCSSClosestDistance();
+ }
+
+ @Override
+ public JumpLinkStatus getJumpLinkStatus(){
+ //return super.getJumpLinkStatus();
+ return getCSSJumpLinkStatus();
+ }
+
+ @Override
+ public JumpLinkType getJumpLinkType(){
+ //return super.getJumpLinkType();
+ return getCSSJumpLinkType();
+ }
+
+ @Override
+ public boolean isJumpLinksReverse(){
+ //return super.isJumpLinksReverse();
+ return isCSSJumpLinksReverse();
+ }
+
+ @Override
+ public int getLineColor(){
+ //return super.getLineColor();
+ return getCSSLineColor();
+ }
+
+ @Override
+ public int getLineWidth(){
+ //return super.getLineWidth();
+ return getCSSLineWidth();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setRoundedBendpointsRadius(int value){
+ super.setRoundedBendpointsRadius(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setRouting(Routing value){
+ super.setRouting(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_Routing();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setSmoothness(Smoothness value){
+ super.setSmoothness(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_Smoothness();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setAvoidObstructions(boolean value){
+ super.setAvoidObstructions(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_AvoidObstructions();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setClosestDistance(boolean value){
+ super.setClosestDistance(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_ClosestDistance();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setJumpLinkStatus(JumpLinkStatus value){
+ super.setJumpLinkStatus(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkStatus();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setJumpLinkType(JumpLinkType value){
+ super.setJumpLinkType(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkType();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setJumpLinksReverse(boolean value){
+ super.setJumpLinksReverse(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinksReverse();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setLineColor(int value){
+ super.setLineColor(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getLineStyle_LineColor();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setLineWidth(int value){
+ super.setLineWidth(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getLineStyle_LineWidth();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDataTypeStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDataTypeStyleImpl.java
new file mode 100644
index 00000000000..380079f2bb6
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDataTypeStyleImpl.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.DataTypeStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDataTypeStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDataTypeStyleDelegate;
+
+public class CSSDataTypeStyleImpl extends DataTypeStyleImpl implements CSSDataTypeStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDataTypeStyle dataTypeStyle;
+
+ protected CSSDataTypeStyle getDataTypeStyle() {
+ if(dataTypeStyle == null) {
+ dataTypeStyle = new CSSDataTypeStyleDelegate(this, getEngine());
+ }
+ return dataTypeStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getDataTypeStyle().getCSSName();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDescriptionStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDescriptionStyleImpl.java
new file mode 100644
index 00000000000..e60a2f97b1b
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDescriptionStyleImpl.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.DescriptionStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDescriptionStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDescriptionStyleDelegate;
+
+public class CSSDescriptionStyleImpl extends DescriptionStyleImpl implements CSSDescriptionStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDescriptionStyle descriptionStyle;
+
+ protected CSSDescriptionStyle getDescriptionStyle() {
+ if(descriptionStyle == null) {
+ descriptionStyle = new CSSDescriptionStyleDelegate(this, getEngine());
+ }
+ return descriptionStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSDescription(){
+ java.lang.String value = super.getDescription();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getDescriptionStyle_Description(), value)){
+ return value;
+ } else {
+ return getDescriptionStyle().getCSSDescription();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getDescription(){
+ //return super.getDescription();
+ return getCSSDescription();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setDescription(java.lang.String value){
+ super.setDescription(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDescriptionStyle_Description();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDiagramLinkStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDiagramLinkStyleImpl.java
new file mode 100644
index 00000000000..792cc3c9ba2
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDiagramLinkStyleImpl.java
@@ -0,0 +1,86 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.DiagramLinkStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDiagramLinkStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDiagramLinkStyleDelegate;
+
+public class CSSDiagramLinkStyleImpl extends DiagramLinkStyleImpl implements CSSDiagramLinkStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDiagramLinkStyle diagramLinkStyle;
+
+ protected CSSDiagramLinkStyle getDiagramLinkStyle() {
+ if(diagramLinkStyle == null) {
+ diagramLinkStyle = new CSSDiagramLinkStyleDelegate(this, getEngine());
+ }
+ return diagramLinkStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+
+
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDiagramStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDiagramStyleImpl.java
new file mode 100644
index 00000000000..9bb74294d17
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDiagramStyleImpl.java
@@ -0,0 +1,204 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.DiagramStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDiagramStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDiagramStyleDelegate;
+
+public class CSSDiagramStyleImpl extends DiagramStyleImpl implements CSSDiagramStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDiagramStyle diagramStyle;
+
+ protected CSSDiagramStyle getDiagramStyle() {
+ if(diagramStyle == null) {
+ diagramStyle = new CSSDiagramStyleDelegate(this, getEngine());
+ }
+ return diagramStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine() {
+ if(engine == null) {
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView() {
+ EObject parent = eContainer();
+ while(!(parent instanceof View) && parent != null) {
+ parent = parent.eContainer();
+ }
+
+ if(parent != null) {
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public int getCSSPageX() {
+ int value = super.getPageX();
+
+ if(ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getPageStyle_PageX(), value)) {
+ return value;
+ } else {
+ return getDiagramStyle().getCSSPageX();
+ }
+ }
+
+ public int getCSSPageY() {
+ int value = super.getPageY();
+
+ if(ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getPageStyle_PageY(), value)) {
+ return value;
+ } else {
+ return getDiagramStyle().getCSSPageY();
+ }
+ }
+
+ public int getCSSPageWidth() {
+ int value = super.getPageWidth();
+
+ if(ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getPageStyle_PageWidth(), value)) {
+ return value;
+ } else {
+ return getDiagramStyle().getCSSPageWidth();
+ }
+ }
+
+ public int getCSSPageHeight() {
+ int value = super.getPageHeight();
+
+ if(ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getPageStyle_PageHeight(), value)) {
+ return value;
+ } else {
+ return getDiagramStyle().getCSSPageHeight();
+ }
+ }
+
+ public java.lang.String getCSSDescription() {
+ java.lang.String value = super.getDescription();
+
+ if(ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getDescriptionStyle_Description(), value)) {
+ return value;
+ } else {
+ return getDiagramStyle().getCSSDescription();
+ }
+ }
+
+
+ @Override
+ public int getPageX() {
+ //return super.getPageX();
+ return getCSSPageX();
+ }
+
+ @Override
+ public int getPageY() {
+ //return super.getPageY();
+ return getCSSPageY();
+ }
+
+ @Override
+ public int getPageWidth() {
+ //return super.getPageWidth();
+ return getCSSPageWidth();
+ }
+
+ @Override
+ public int getPageHeight() {
+ //return super.getPageHeight();
+ return getCSSPageHeight();
+ }
+
+ @Override
+ public java.lang.String getDescription() {
+ //return super.getDescription();
+ return getCSSDescription();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setPageX(int value) {
+ super.setPageX(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getPageStyle_PageX();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setPageY(int value) {
+ super.setPageY(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getPageStyle_PageY();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setPageWidth(int value) {
+ super.setPageWidth(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getPageStyle_PageWidth();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setPageHeight(int value) {
+ super.setPageHeight(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getPageStyle_PageHeight();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setDescription(java.lang.String value) {
+ super.setDescription(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDescriptionStyle_Description();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDoubleListValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDoubleListValueStyleImpl.java
new file mode 100644
index 00000000000..e12c0235a80
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDoubleListValueStyleImpl.java
@@ -0,0 +1,125 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.DoubleListValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDoubleListValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDoubleListValueStyleDelegate;
+
+public class CSSDoubleListValueStyleImpl extends DoubleListValueStyleImpl implements CSSDoubleListValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDoubleListValueStyle doubleListValueStyle;
+
+ protected CSSDoubleListValueStyle getDoubleListValueStyle() {
+ if(doubleListValueStyle == null) {
+ doubleListValueStyle = new CSSDoubleListValueStyleDelegate(this, getEngine());
+ }
+ return doubleListValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getDoubleListValueStyle().getCSSName();
+ }
+ }
+
+ public EList getCSSDoubleListValue(){
+ EList value = super.getDoubleListValue();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getDoubleListValueStyle_DoubleListValue(), value)){
+ return value;
+ } else {
+ return getDoubleListValueStyle().getCSSDoubleListValue();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+ @Override
+ public EList getDoubleListValue(){
+ //return super.getDoubleListValue();
+ return getCSSDoubleListValue();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDoubleValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDoubleValueStyleImpl.java
new file mode 100644
index 00000000000..33291745e97
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDoubleValueStyleImpl.java
@@ -0,0 +1,132 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.DoubleValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDoubleValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDoubleValueStyleDelegate;
+
+public class CSSDoubleValueStyleImpl extends DoubleValueStyleImpl implements CSSDoubleValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDoubleValueStyle doubleValueStyle;
+
+ protected CSSDoubleValueStyle getDoubleValueStyle() {
+ if(doubleValueStyle == null) {
+ doubleValueStyle = new CSSDoubleValueStyleDelegate(this, getEngine());
+ }
+ return doubleValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getDoubleValueStyle().getCSSName();
+ }
+ }
+
+ public double getCSSDoubleValue(){
+ double value = super.getDoubleValue();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getDoubleValueStyle_DoubleValue(), value)){
+ return value;
+ } else {
+ return getDoubleValueStyle().getCSSDoubleValue();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+ @Override
+ public double getDoubleValue(){
+ //return super.getDoubleValue();
+ return getCSSDoubleValue();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setDoubleValue(double value){
+ super.setDoubleValue(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDoubleValueStyle_DoubleValue();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDrawerStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDrawerStyleImpl.java
new file mode 100644
index 00000000000..fa2788b619c
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSDrawerStyleImpl.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.DrawerStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDrawerStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDrawerStyleDelegate;
+
+public class CSSDrawerStyleImpl extends DrawerStyleImpl implements CSSDrawerStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDrawerStyle drawerStyle;
+
+ protected CSSDrawerStyle getDrawerStyle() {
+ if(drawerStyle == null) {
+ drawerStyle = new CSSDrawerStyleDelegate(this, getEngine());
+ }
+ return drawerStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public boolean isCSSCollapsed(){
+ boolean value = super.isCollapsed();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getDrawerStyle_Collapsed(), value)){
+ return value;
+ } else {
+ return getDrawerStyle().isCSSCollapsed();
+ }
+ }
+
+
+ @Override
+ public boolean isCollapsed(){
+ //return super.isCollapsed();
+ return isCSSCollapsed();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setCollapsed(boolean value){
+ super.setCollapsed(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDrawerStyle_Collapsed();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSEObjectListValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSEObjectListValueStyleImpl.java
new file mode 100644
index 00000000000..806a70cc13b
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSEObjectListValueStyleImpl.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.EObjectListValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSEObjectListValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSEObjectListValueStyleDelegate;
+
+public class CSSEObjectListValueStyleImpl extends EObjectListValueStyleImpl implements CSSEObjectListValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSEObjectListValueStyle eObjectListValueStyle;
+
+ protected CSSEObjectListValueStyle getEObjectListValueStyle() {
+ if(eObjectListValueStyle == null) {
+ eObjectListValueStyle = new CSSEObjectListValueStyleDelegate(this, getEngine());
+ }
+ return eObjectListValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getEObjectListValueStyle().getCSSName();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSEObjectValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSEObjectValueStyleImpl.java
new file mode 100644
index 00000000000..889730a87ac
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSEObjectValueStyleImpl.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.EObjectValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSEObjectValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSEObjectValueStyleDelegate;
+
+public class CSSEObjectValueStyleImpl extends EObjectValueStyleImpl implements CSSEObjectValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSEObjectValueStyle eObjectValueStyle;
+
+ protected CSSEObjectValueStyle getEObjectValueStyle() {
+ if(eObjectValueStyle == null) {
+ eObjectValueStyle = new CSSEObjectValueStyleDelegate(this, getEngine());
+ }
+ return eObjectValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getEObjectValueStyle().getCSSName();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSFillStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSFillStyleImpl.java
new file mode 100644
index 00000000000..ca4710433d5
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSFillStyleImpl.java
@@ -0,0 +1,156 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.FillStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSFillStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSFillStyleDelegate;
+
+public class CSSFillStyleImpl extends FillStyleImpl implements CSSFillStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSFillStyle fillStyle;
+
+ protected CSSFillStyle getFillStyle() {
+ if(fillStyle == null) {
+ fillStyle = new CSSFillStyleDelegate(this, getEngine());
+ }
+ return fillStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public int getCSSFillColor(){
+ int value = super.getFillColor();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFillStyle_FillColor(), value)){
+ return value;
+ } else {
+ return getFillStyle().getCSSFillColor();
+ }
+ }
+
+ public int getCSSTransparency(){
+ int value = super.getTransparency();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFillStyle_Transparency(), value)){
+ return value;
+ } else {
+ return getFillStyle().getCSSTransparency();
+ }
+ }
+
+ public org.eclipse.gmf.runtime.notation.datatype.GradientData getCSSGradient(){
+ org.eclipse.gmf.runtime.notation.datatype.GradientData value = super.getGradient();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFillStyle_Gradient(), value)){
+ return value;
+ } else {
+ return getFillStyle().getCSSGradient();
+ }
+ }
+
+
+ @Override
+ public int getFillColor(){
+ //return super.getFillColor();
+ return getCSSFillColor();
+ }
+
+ @Override
+ public int getTransparency(){
+ //return super.getTransparency();
+ return getCSSTransparency();
+ }
+
+ @Override
+ public org.eclipse.gmf.runtime.notation.datatype.GradientData getGradient(){
+ //return super.getGradient();
+ return getCSSGradient();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setFillColor(int value){
+ super.setFillColor(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFillStyle_FillColor();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setTransparency(int value){
+ super.setTransparency(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFillStyle_Transparency();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setGradient(org.eclipse.gmf.runtime.notation.datatype.GradientData value){
+ super.setGradient(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFillStyle_Gradient();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSFilteringStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSFilteringStyleImpl.java
new file mode 100644
index 00000000000..5215c40daa6
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSFilteringStyleImpl.java
@@ -0,0 +1,133 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.Filtering;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.FilteringStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSFilteringStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSFilteringStyleDelegate;
+
+public class CSSFilteringStyleImpl extends FilteringStyleImpl implements CSSFilteringStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSFilteringStyle filteringStyle;
+
+ protected CSSFilteringStyle getFilteringStyle() {
+ if(filteringStyle == null) {
+ filteringStyle = new CSSFilteringStyleDelegate(this, getEngine());
+ }
+ return filteringStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public Filtering getCSSFiltering(){
+ Filtering value = super.getFiltering();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFilteringStyle_Filtering(), value)){
+ return value;
+ } else {
+ return getFilteringStyle().getCSSFiltering();
+ }
+ }
+
+ public java.util.List getCSSFilteringKeys(){
+ java.util.List value = super.getFilteringKeys();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFilteringStyle_FilteringKeys(), value)){
+ return value;
+ } else {
+ return getFilteringStyle().getCSSFilteringKeys();
+ }
+ }
+
+
+ @Override
+ public Filtering getFiltering(){
+ //return super.getFiltering();
+ return getCSSFiltering();
+ }
+
+ @Override
+ public java.util.List getFilteringKeys(){
+ //return super.getFilteringKeys();
+ return getCSSFilteringKeys();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setFiltering(Filtering value){
+ super.setFiltering(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFilteringStyle_Filtering();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setFilteringKeys(java.util.List value){
+ super.setFilteringKeys(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFilteringStyle_FilteringKeys();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSFontStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSFontStyleImpl.java
new file mode 100644
index 00000000000..1ca85f5f869
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSFontStyleImpl.java
@@ -0,0 +1,252 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.FontStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSFontStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSFontStyleDelegate;
+
+public class CSSFontStyleImpl extends FontStyleImpl implements CSSFontStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSFontStyle fontStyle;
+
+ protected CSSFontStyle getFontStyle() {
+ if(fontStyle == null) {
+ fontStyle = new CSSFontStyleDelegate(this, getEngine());
+ }
+ return fontStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public int getCSSFontColor(){
+ int value = super.getFontColor();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_FontColor(), value)){
+ return value;
+ } else {
+ return getFontStyle().getCSSFontColor();
+ }
+ }
+
+ public java.lang.String getCSSFontName(){
+ java.lang.String value = super.getFontName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_FontName(), value)){
+ return value;
+ } else {
+ return getFontStyle().getCSSFontName();
+ }
+ }
+
+ public int getCSSFontHeight(){
+ int value = super.getFontHeight();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_FontHeight(), value)){
+ return value;
+ } else {
+ return getFontStyle().getCSSFontHeight();
+ }
+ }
+
+ public boolean isCSSBold(){
+ boolean value = super.isBold();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_Bold(), value)){
+ return value;
+ } else {
+ return getFontStyle().isCSSBold();
+ }
+ }
+
+ public boolean isCSSItalic(){
+ boolean value = super.isItalic();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_Italic(), value)){
+ return value;
+ } else {
+ return getFontStyle().isCSSItalic();
+ }
+ }
+
+ public boolean isCSSUnderline(){
+ boolean value = super.isUnderline();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_Underline(), value)){
+ return value;
+ } else {
+ return getFontStyle().isCSSUnderline();
+ }
+ }
+
+ public boolean isCSSStrikeThrough(){
+ boolean value = super.isStrikeThrough();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_StrikeThrough(), value)){
+ return value;
+ } else {
+ return getFontStyle().isCSSStrikeThrough();
+ }
+ }
+
+
+ @Override
+ public int getFontColor(){
+ //return super.getFontColor();
+ return getCSSFontColor();
+ }
+
+ @Override
+ public java.lang.String getFontName(){
+ //return super.getFontName();
+ return getCSSFontName();
+ }
+
+ @Override
+ public int getFontHeight(){
+ //return super.getFontHeight();
+ return getCSSFontHeight();
+ }
+
+ @Override
+ public boolean isBold(){
+ //return super.isBold();
+ return isCSSBold();
+ }
+
+ @Override
+ public boolean isItalic(){
+ //return super.isItalic();
+ return isCSSItalic();
+ }
+
+ @Override
+ public boolean isUnderline(){
+ //return super.isUnderline();
+ return isCSSUnderline();
+ }
+
+ @Override
+ public boolean isStrikeThrough(){
+ //return super.isStrikeThrough();
+ return isCSSStrikeThrough();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setFontColor(int value){
+ super.setFontColor(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_FontColor();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setFontName(java.lang.String value){
+ super.setFontName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_FontName();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setFontHeight(int value){
+ super.setFontHeight(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_FontHeight();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setBold(boolean value){
+ super.setBold(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_Bold();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setItalic(boolean value){
+ super.setItalic(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_Italic();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setUnderline(boolean value){
+ super.setUnderline(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_Underline();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setStrikeThrough(boolean value){
+ super.setStrikeThrough(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_StrikeThrough();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSGuideStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSGuideStyleImpl.java
new file mode 100644
index 00000000000..37e3879f7d7
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSGuideStyleImpl.java
@@ -0,0 +1,86 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.GuideStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSGuideStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSGuideStyleDelegate;
+
+public class CSSGuideStyleImpl extends GuideStyleImpl implements CSSGuideStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSGuideStyle guideStyle;
+
+ protected CSSGuideStyle getGuideStyle() {
+ if(guideStyle == null) {
+ guideStyle = new CSSGuideStyleDelegate(this, getEngine());
+ }
+ return guideStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+
+
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSHintedDiagramLinkStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSHintedDiagramLinkStyleImpl.java
new file mode 100644
index 00000000000..4afab3d12a3
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSHintedDiagramLinkStyleImpl.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.HintedDiagramLinkStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSHintedDiagramLinkStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSHintedDiagramLinkStyleDelegate;
+
+public class CSSHintedDiagramLinkStyleImpl extends HintedDiagramLinkStyleImpl implements CSSHintedDiagramLinkStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSHintedDiagramLinkStyle hintedDiagramLinkStyle;
+
+ protected CSSHintedDiagramLinkStyle getHintedDiagramLinkStyle() {
+ if(hintedDiagramLinkStyle == null) {
+ hintedDiagramLinkStyle = new CSSHintedDiagramLinkStyleDelegate(this, getEngine());
+ }
+ return hintedDiagramLinkStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSHint(){
+ java.lang.String value = super.getHint();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getHintedDiagramLinkStyle_Hint(), value)){
+ return value;
+ } else {
+ return getHintedDiagramLinkStyle().getCSSHint();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getHint(){
+ //return super.getHint();
+ return getCSSHint();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setHint(java.lang.String value){
+ super.setHint(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getHintedDiagramLinkStyle_Hint();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSImageBufferStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSImageBufferStyleImpl.java
new file mode 100644
index 00000000000..2ba20044436
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSImageBufferStyleImpl.java
@@ -0,0 +1,132 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.ImageBufferStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSImageBufferStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSImageBufferStyleDelegate;
+
+public class CSSImageBufferStyleImpl extends ImageBufferStyleImpl implements CSSImageBufferStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSImageBufferStyle imageBufferStyle;
+
+ protected CSSImageBufferStyle getImageBufferStyle() {
+ if(imageBufferStyle == null) {
+ imageBufferStyle = new CSSImageBufferStyleDelegate(this, getEngine());
+ }
+ return imageBufferStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine() {
+ if(engine == null) {
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView() {
+ EObject parent = eContainer();
+ while(!(parent instanceof View) && parent != null) {
+ parent = parent.eContainer();
+ }
+
+ if(parent != null) {
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.Boolean getCSSAntiAlias() {
+ java.lang.Boolean value = super.getAntiAlias();
+
+ if(ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getImageStyle_AntiAlias(), value)) {
+ return value;
+ } else {
+ return getImageBufferStyle().getCSSAntiAlias();
+ }
+ }
+
+ public java.lang.Boolean getCSSMaintainAspectRatio() {
+ java.lang.Boolean value = super.getMaintainAspectRatio();
+
+ if(ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getImageStyle_MaintainAspectRatio(), value)) {
+ return value;
+ } else {
+ return getImageBufferStyle().getCSSMaintainAspectRatio();
+ }
+ }
+
+
+ @Override
+ public java.lang.Boolean getAntiAlias() {
+ //return super.getAntiAlias();
+ return getCSSAntiAlias();
+ }
+
+ @Override
+ public java.lang.Boolean getMaintainAspectRatio() {
+ //return super.getMaintainAspectRatio();
+ return getCSSMaintainAspectRatio();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setAntiAlias(java.lang.Boolean value) {
+ super.setAntiAlias(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getImageStyle_AntiAlias();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setMaintainAspectRatio(java.lang.Boolean value) {
+ super.setMaintainAspectRatio(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getImageStyle_MaintainAspectRatio();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSImageStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSImageStyleImpl.java
new file mode 100644
index 00000000000..d59406785ac
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSImageStyleImpl.java
@@ -0,0 +1,132 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.ImageStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSImageStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSImageStyleDelegate;
+
+public class CSSImageStyleImpl extends ImageStyleImpl implements CSSImageStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSImageStyle imageStyle;
+
+ protected CSSImageStyle getImageStyle() {
+ if(imageStyle == null) {
+ imageStyle = new CSSImageStyleDelegate(this, getEngine());
+ }
+ return imageStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.Boolean getCSSAntiAlias(){
+ java.lang.Boolean value = super.getAntiAlias();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getImageStyle_AntiAlias(), value)){
+ return value;
+ } else {
+ return getImageStyle().getCSSAntiAlias();
+ }
+ }
+
+ public java.lang.Boolean getCSSMaintainAspectRatio(){
+ java.lang.Boolean value = super.getMaintainAspectRatio();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getImageStyle_MaintainAspectRatio(), value)){
+ return value;
+ } else {
+ return getImageStyle().getCSSMaintainAspectRatio();
+ }
+ }
+
+
+ @Override
+ public java.lang.Boolean getAntiAlias(){
+ //return super.getAntiAlias();
+ return getCSSAntiAlias();
+ }
+
+ @Override
+ public java.lang.Boolean getMaintainAspectRatio(){
+ //return super.getMaintainAspectRatio();
+ return getCSSMaintainAspectRatio();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setAntiAlias(java.lang.Boolean value){
+ super.setAntiAlias(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getImageStyle_AntiAlias();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setMaintainAspectRatio(java.lang.Boolean value){
+ super.setMaintainAspectRatio(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getImageStyle_MaintainAspectRatio();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSIntListValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSIntListValueStyleImpl.java
new file mode 100644
index 00000000000..9836c2b0648
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSIntListValueStyleImpl.java
@@ -0,0 +1,125 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.IntListValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSIntListValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSIntListValueStyleDelegate;
+
+public class CSSIntListValueStyleImpl extends IntListValueStyleImpl implements CSSIntListValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSIntListValueStyle intListValueStyle;
+
+ protected CSSIntListValueStyle getIntListValueStyle() {
+ if(intListValueStyle == null) {
+ intListValueStyle = new CSSIntListValueStyleDelegate(this, getEngine());
+ }
+ return intListValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getIntListValueStyle().getCSSName();
+ }
+ }
+
+ public EList getCSSIntListValue(){
+ EList value = super.getIntListValue();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getIntListValueStyle_IntListValue(), value)){
+ return value;
+ } else {
+ return getIntListValueStyle().getCSSIntListValue();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+ @Override
+ public EList getIntListValue(){
+ //return super.getIntListValue();
+ return getCSSIntListValue();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSIntValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSIntValueStyleImpl.java
new file mode 100644
index 00000000000..340ff6a7c20
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSIntValueStyleImpl.java
@@ -0,0 +1,132 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.IntValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSIntValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSIntValueStyleDelegate;
+
+public class CSSIntValueStyleImpl extends IntValueStyleImpl implements CSSIntValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSIntValueStyle intValueStyle;
+
+ protected CSSIntValueStyle getIntValueStyle() {
+ if(intValueStyle == null) {
+ intValueStyle = new CSSIntValueStyleDelegate(this, getEngine());
+ }
+ return intValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getIntValueStyle().getCSSName();
+ }
+ }
+
+ public int getCSSIntValue(){
+ int value = super.getIntValue();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getIntValueStyle_IntValue(), value)){
+ return value;
+ } else {
+ return getIntValueStyle().getCSSIntValue();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+ @Override
+ public int getIntValue(){
+ //return super.getIntValue();
+ return getCSSIntValue();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setIntValue(int value){
+ super.setIntValue(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getIntValueStyle_IntValue();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSLineStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSLineStyleImpl.java
new file mode 100644
index 00000000000..2e10f5acf27
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSLineStyleImpl.java
@@ -0,0 +1,132 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.LineStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSLineStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSLineStyleDelegate;
+
+public class CSSLineStyleImpl extends LineStyleImpl implements CSSLineStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSLineStyle lineStyle;
+
+ protected CSSLineStyle getLineStyle() {
+ if(lineStyle == null) {
+ lineStyle = new CSSLineStyleDelegate(this, getEngine());
+ }
+ return lineStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public int getCSSLineColor(){
+ int value = super.getLineColor();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getLineStyle_LineColor(), value)){
+ return value;
+ } else {
+ return getLineStyle().getCSSLineColor();
+ }
+ }
+
+ public int getCSSLineWidth(){
+ int value = super.getLineWidth();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getLineStyle_LineWidth(), value)){
+ return value;
+ } else {
+ return getLineStyle().getCSSLineWidth();
+ }
+ }
+
+
+ @Override
+ public int getLineColor(){
+ //return super.getLineColor();
+ return getCSSLineColor();
+ }
+
+ @Override
+ public int getLineWidth(){
+ //return super.getLineWidth();
+ return getCSSLineWidth();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setLineColor(int value){
+ super.setLineColor(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getLineStyle_LineColor();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setLineWidth(int value){
+ super.setLineWidth(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getLineStyle_LineWidth();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSLineTypeStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSLineTypeStyleImpl.java
new file mode 100644
index 00000000000..48bfda1962e
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSLineTypeStyleImpl.java
@@ -0,0 +1,109 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.LineType;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.LineTypeStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSLineTypeStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSLineTypeStyleDelegate;
+
+public class CSSLineTypeStyleImpl extends LineTypeStyleImpl implements CSSLineTypeStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSLineTypeStyle lineTypeStyle;
+
+ protected CSSLineTypeStyle getLineTypeStyle() {
+ if(lineTypeStyle == null) {
+ lineTypeStyle = new CSSLineTypeStyleDelegate(this, getEngine());
+ }
+ return lineTypeStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public LineType getCSSLineType(){
+ LineType value = super.getLineType();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getLineTypeStyle_LineType(), value)){
+ return value;
+ } else {
+ return getLineTypeStyle().getCSSLineType();
+ }
+ }
+
+
+ @Override
+ public LineType getLineType(){
+ //return super.getLineType();
+ return getCSSLineType();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setLineType(LineType value){
+ super.setLineType(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getLineTypeStyle_LineType();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSListCompartmentImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSListCompartmentImpl.java
new file mode 100644
index 00000000000..da75d161e63
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSListCompartmentImpl.java
@@ -0,0 +1,159 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.Filtering;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.Sorting;
+import org.eclipse.gmf.runtime.notation.impl.ListCompartmentImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDrawerStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDrawerStyleDelegate;
+
+public class CSSListCompartmentImpl extends ListCompartmentImpl implements CSSDrawerStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDrawerStyle drawerStyle;
+
+ protected CSSDrawerStyle getDrawerStyle() {
+ if(drawerStyle == null) {
+ drawerStyle = new CSSDrawerStyleDelegate(this, getEngine());
+ }
+ return drawerStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine() {
+ if(engine == null) {
+ engine = ((CSSDiagramImpl)getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public boolean isCSSCollapsed(){
+ boolean value = super.isCollapsed();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getDrawerStyle_Collapsed(), value)){
+ return value;
+ } else {
+ return getDrawerStyle().isCSSCollapsed();
+ }
+ }
+
+
+ @Override
+ public boolean isCollapsed(){
+ //return super.isCollapsed();
+ return isCSSCollapsed();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setVisible(boolean value){
+ super.setVisible(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Visible();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setType(java.lang.String value){
+ super.setType(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Type();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setMutable(boolean value){
+ super.setMutable(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Mutable();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setCollapsed(boolean value){
+ super.setCollapsed(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDrawerStyle_Collapsed();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setSorting(Sorting value){
+ super.setSorting(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getSortingStyle_Sorting();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setSortingKeys(java.util.Map value){
+ super.setSortingKeys(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getSortingStyle_SortingKeys();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setFiltering(Filtering value){
+ super.setFiltering(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFilteringStyle_Filtering();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setFilteringKeys(java.util.List value){
+ super.setFilteringKeys(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFilteringStyle_FilteringKeys();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setShowTitle(boolean value){
+ super.setShowTitle(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getTitleStyle_ShowTitle();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(this, feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSListValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSListValueStyleImpl.java
new file mode 100644
index 00000000000..fd2748e8e7b
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSListValueStyleImpl.java
@@ -0,0 +1,125 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.ListValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSListValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSListValueStyleDelegate;
+
+public class CSSListValueStyleImpl extends ListValueStyleImpl implements CSSListValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSListValueStyle listValueStyle;
+
+ protected CSSListValueStyle getListValueStyle() {
+ if(listValueStyle == null) {
+ listValueStyle = new CSSListValueStyleDelegate(this, getEngine());
+ }
+ return listValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getListValueStyle().getCSSName();
+ }
+ }
+
+ public EList getCSSRawValuesList(){
+ EList value = super.getRawValuesList();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getListValueStyle_RawValuesList(), value)){
+ return value;
+ } else {
+ return getListValueStyle().getCSSRawValuesList();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+ @Override
+ public EList getRawValuesList(){
+ //return super.getRawValuesList();
+ return getCSSRawValuesList();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSMultiDiagramLinkStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSMultiDiagramLinkStyleImpl.java
new file mode 100644
index 00000000000..54d34c70817
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSMultiDiagramLinkStyleImpl.java
@@ -0,0 +1,86 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.MultiDiagramLinkStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSMultiDiagramLinkStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSMultiDiagramLinkStyleDelegate;
+
+public class CSSMultiDiagramLinkStyleImpl extends MultiDiagramLinkStyleImpl implements CSSMultiDiagramLinkStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSMultiDiagramLinkStyle multiDiagramLinkStyle;
+
+ protected CSSMultiDiagramLinkStyle getMultiDiagramLinkStyle() {
+ if(multiDiagramLinkStyle == null) {
+ multiDiagramLinkStyle = new CSSMultiDiagramLinkStyleDelegate(this, getEngine());
+ }
+ return multiDiagramLinkStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+
+
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSNamedStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSNamedStyleImpl.java
new file mode 100644
index 00000000000..af5233bb769
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSNamedStyleImpl.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.NamedStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSNamedStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSNamedStyleDelegate;
+
+public class CSSNamedStyleImpl extends NamedStyleImpl implements CSSNamedStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSNamedStyle namedStyle;
+
+ protected CSSNamedStyle getNamedStyle() {
+ if(namedStyle == null) {
+ namedStyle = new CSSNamedStyleDelegate(this, getEngine());
+ }
+ return namedStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getNamedStyle().getCSSName();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSPageStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSPageStyleImpl.java
new file mode 100644
index 00000000000..afcaa0c748b
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSPageStyleImpl.java
@@ -0,0 +1,180 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.PageStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSPageStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSPageStyleDelegate;
+
+public class CSSPageStyleImpl extends PageStyleImpl implements CSSPageStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSPageStyle pageStyle;
+
+ protected CSSPageStyle getPageStyle() {
+ if(pageStyle == null) {
+ pageStyle = new CSSPageStyleDelegate(this, getEngine());
+ }
+ return pageStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public int getCSSPageX(){
+ int value = super.getPageX();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getPageStyle_PageX(), value)){
+ return value;
+ } else {
+ return getPageStyle().getCSSPageX();
+ }
+ }
+
+ public int getCSSPageY(){
+ int value = super.getPageY();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getPageStyle_PageY(), value)){
+ return value;
+ } else {
+ return getPageStyle().getCSSPageY();
+ }
+ }
+
+ public int getCSSPageWidth(){
+ int value = super.getPageWidth();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getPageStyle_PageWidth(), value)){
+ return value;
+ } else {
+ return getPageStyle().getCSSPageWidth();
+ }
+ }
+
+ public int getCSSPageHeight(){
+ int value = super.getPageHeight();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getPageStyle_PageHeight(), value)){
+ return value;
+ } else {
+ return getPageStyle().getCSSPageHeight();
+ }
+ }
+
+
+ @Override
+ public int getPageX(){
+ //return super.getPageX();
+ return getCSSPageX();
+ }
+
+ @Override
+ public int getPageY(){
+ //return super.getPageY();
+ return getCSSPageY();
+ }
+
+ @Override
+ public int getPageWidth(){
+ //return super.getPageWidth();
+ return getCSSPageWidth();
+ }
+
+ @Override
+ public int getPageHeight(){
+ //return super.getPageHeight();
+ return getCSSPageHeight();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setPageX(int value){
+ super.setPageX(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getPageStyle_PageX();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setPageY(int value){
+ super.setPageY(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getPageStyle_PageY();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setPageWidth(int value){
+ super.setPageWidth(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getPageStyle_PageWidth();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setPageHeight(int value){
+ super.setPageHeight(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getPageStyle_PageHeight();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSPropertiesSetStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSPropertiesSetStyleImpl.java
new file mode 100644
index 00000000000..30ffdecd8b1
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSPropertiesSetStyleImpl.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.PropertiesSetStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSPropertiesSetStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSPropertiesSetStyleDelegate;
+
+public class CSSPropertiesSetStyleImpl extends PropertiesSetStyleImpl implements CSSPropertiesSetStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSPropertiesSetStyle propertiesSetStyle;
+
+ protected CSSPropertiesSetStyle getPropertiesSetStyle() {
+ if(propertiesSetStyle == null) {
+ propertiesSetStyle = new CSSPropertiesSetStyleDelegate(this, getEngine());
+ }
+ return propertiesSetStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getPropertiesSetStyle().getCSSName();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSRoundedCornersStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSRoundedCornersStyleImpl.java
new file mode 100644
index 00000000000..a7d930c6235
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSRoundedCornersStyleImpl.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.RoundedCornersStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSRoundedCornersStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSRoundedCornersStyleDelegate;
+
+public class CSSRoundedCornersStyleImpl extends RoundedCornersStyleImpl implements CSSRoundedCornersStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSRoundedCornersStyle roundedCornersStyle;
+
+ protected CSSRoundedCornersStyle getRoundedCornersStyle() {
+ if(roundedCornersStyle == null) {
+ roundedCornersStyle = new CSSRoundedCornersStyleDelegate(this, getEngine());
+ }
+ return roundedCornersStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public int getCSSRoundedBendpointsRadius(){
+ int value = super.getRoundedBendpointsRadius();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius(), value)){
+ return value;
+ } else {
+ return getRoundedCornersStyle().getCSSRoundedBendpointsRadius();
+ }
+ }
+
+
+ @Override
+ public int getRoundedBendpointsRadius(){
+ //return super.getRoundedBendpointsRadius();
+ return getCSSRoundedBendpointsRadius();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setRoundedBendpointsRadius(int value){
+ super.setRoundedBendpointsRadius(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSRoutingStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSRoutingStyleImpl.java
new file mode 100644
index 00000000000..e97e9da0f62
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSRoutingStyleImpl.java
@@ -0,0 +1,280 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.JumpLinkStatus;
+import org.eclipse.gmf.runtime.notation.JumpLinkType;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.Routing;
+import org.eclipse.gmf.runtime.notation.Smoothness;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.RoutingStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSRoutingStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSRoutingStyleDelegate;
+
+public class CSSRoutingStyleImpl extends RoutingStyleImpl implements CSSRoutingStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSRoutingStyle routingStyle;
+
+ protected CSSRoutingStyle getRoutingStyle() {
+ if(routingStyle == null) {
+ routingStyle = new CSSRoutingStyleDelegate(this, getEngine());
+ }
+ return routingStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public int getCSSRoundedBendpointsRadius(){
+ int value = super.getRoundedBendpointsRadius();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius(), value)){
+ return value;
+ } else {
+ return getRoutingStyle().getCSSRoundedBendpointsRadius();
+ }
+ }
+
+ public Routing getCSSRouting(){
+ Routing value = super.getRouting();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_Routing(), value)){
+ return value;
+ } else {
+ return getRoutingStyle().getCSSRouting();
+ }
+ }
+
+ public Smoothness getCSSSmoothness(){
+ Smoothness value = super.getSmoothness();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_Smoothness(), value)){
+ return value;
+ } else {
+ return getRoutingStyle().getCSSSmoothness();
+ }
+ }
+
+ public boolean isCSSAvoidObstructions(){
+ boolean value = super.isAvoidObstructions();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_AvoidObstructions(), value)){
+ return value;
+ } else {
+ return getRoutingStyle().isCSSAvoidObstructions();
+ }
+ }
+
+ public boolean isCSSClosestDistance(){
+ boolean value = super.isClosestDistance();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_ClosestDistance(), value)){
+ return value;
+ } else {
+ return getRoutingStyle().isCSSClosestDistance();
+ }
+ }
+
+ public JumpLinkStatus getCSSJumpLinkStatus(){
+ JumpLinkStatus value = super.getJumpLinkStatus();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkStatus(), value)){
+ return value;
+ } else {
+ return getRoutingStyle().getCSSJumpLinkStatus();
+ }
+ }
+
+ public JumpLinkType getCSSJumpLinkType(){
+ JumpLinkType value = super.getJumpLinkType();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkType(), value)){
+ return value;
+ } else {
+ return getRoutingStyle().getCSSJumpLinkType();
+ }
+ }
+
+ public boolean isCSSJumpLinksReverse(){
+ boolean value = super.isJumpLinksReverse();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoutingStyle_JumpLinksReverse(), value)){
+ return value;
+ } else {
+ return getRoutingStyle().isCSSJumpLinksReverse();
+ }
+ }
+
+
+ @Override
+ public int getRoundedBendpointsRadius(){
+ //return super.getRoundedBendpointsRadius();
+ return getCSSRoundedBendpointsRadius();
+ }
+
+ @Override
+ public Routing getRouting(){
+ //return super.getRouting();
+ return getCSSRouting();
+ }
+
+ @Override
+ public Smoothness getSmoothness(){
+ //return super.getSmoothness();
+ return getCSSSmoothness();
+ }
+
+ @Override
+ public boolean isAvoidObstructions(){
+ //return super.isAvoidObstructions();
+ return isCSSAvoidObstructions();
+ }
+
+ @Override
+ public boolean isClosestDistance(){
+ //return super.isClosestDistance();
+ return isCSSClosestDistance();
+ }
+
+ @Override
+ public JumpLinkStatus getJumpLinkStatus(){
+ //return super.getJumpLinkStatus();
+ return getCSSJumpLinkStatus();
+ }
+
+ @Override
+ public JumpLinkType getJumpLinkType(){
+ //return super.getJumpLinkType();
+ return getCSSJumpLinkType();
+ }
+
+ @Override
+ public boolean isJumpLinksReverse(){
+ //return super.isJumpLinksReverse();
+ return isCSSJumpLinksReverse();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setRoundedBendpointsRadius(int value){
+ super.setRoundedBendpointsRadius(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setRouting(Routing value){
+ super.setRouting(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_Routing();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setSmoothness(Smoothness value){
+ super.setSmoothness(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_Smoothness();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setAvoidObstructions(boolean value){
+ super.setAvoidObstructions(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_AvoidObstructions();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setClosestDistance(boolean value){
+ super.setClosestDistance(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_ClosestDistance();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setJumpLinkStatus(JumpLinkStatus value){
+ super.setJumpLinkStatus(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkStatus();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setJumpLinkType(JumpLinkType value){
+ super.setJumpLinkType(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkType();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setJumpLinksReverse(boolean value){
+ super.setJumpLinksReverse(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinksReverse();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSSemanticListCompartmentImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSSemanticListCompartmentImpl.java
new file mode 100644
index 00000000000..132c94b14de
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSSemanticListCompartmentImpl.java
@@ -0,0 +1,159 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.Filtering;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.Sorting;
+import org.eclipse.gmf.runtime.notation.impl.SemanticListCompartmentImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDrawerStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDrawerStyleDelegate;
+
+public class CSSSemanticListCompartmentImpl extends SemanticListCompartmentImpl implements CSSDrawerStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDrawerStyle drawerStyle;
+
+ protected CSSDrawerStyle getDrawerStyle() {
+ if(drawerStyle == null) {
+ drawerStyle = new CSSDrawerStyleDelegate(this, getEngine());
+ }
+ return drawerStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine() {
+ if(engine == null) {
+ engine = ((CSSDiagramImpl)getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public boolean isCSSCollapsed(){
+ boolean value = super.isCollapsed();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getDrawerStyle_Collapsed(), value)){
+ return value;
+ } else {
+ return getDrawerStyle().isCSSCollapsed();
+ }
+ }
+
+
+ @Override
+ public boolean isCollapsed(){
+ //return super.isCollapsed();
+ return isCSSCollapsed();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setVisible(boolean value){
+ super.setVisible(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Visible();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setType(java.lang.String value){
+ super.setType(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Type();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setMutable(boolean value){
+ super.setMutable(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Mutable();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setCollapsed(boolean value){
+ super.setCollapsed(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDrawerStyle_Collapsed();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setSorting(Sorting value){
+ super.setSorting(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getSortingStyle_Sorting();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setSortingKeys(java.util.Map value){
+ super.setSortingKeys(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getSortingStyle_SortingKeys();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setFiltering(Filtering value){
+ super.setFiltering(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFilteringStyle_Filtering();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setFilteringKeys(java.util.List value){
+ super.setFilteringKeys(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFilteringStyle_FilteringKeys();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setShowTitle(boolean value){
+ super.setShowTitle(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getTitleStyle_ShowTitle();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(this, feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSShapeImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSShapeImpl.java
new file mode 100644
index 00000000000..40171e0c281
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSShapeImpl.java
@@ -0,0 +1,452 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.impl.ShapeImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.provider.CSSCustomStyleDelegate;
+import org.eclipse.papyrus.infra.gmfdiag.css.provider.CustomStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSShapeStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSShapeStyleDelegate;
+
+public class CSSShapeImpl extends ShapeImpl implements CSSShapeStyle, CustomStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSShapeStyle shapeStyle;
+
+ private CustomStyle customStyle;
+
+ protected CSSShapeStyle getShapeStyle() {
+ if(shapeStyle == null) {
+ shapeStyle = new CSSShapeStyleDelegate(this, getEngine());
+ }
+ return shapeStyle;
+ }
+
+ protected CustomStyle getCustomStyle() {
+ if(customStyle == null) {
+ customStyle = new CSSCustomStyleDelegate(this, getEngine());
+ }
+ return customStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine() {
+ if(engine == null) {
+ engine = ((CSSDiagramImpl)getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public int getCSSFontColor() {
+ int value = super.getFontColor();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getFontStyle_FontColor(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().getCSSFontColor();
+ }
+ }
+
+ public java.lang.String getCSSFontName() {
+ java.lang.String value = super.getFontName();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getFontStyle_FontName(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().getCSSFontName();
+ }
+ }
+
+ public int getCSSFontHeight() {
+ int value = super.getFontHeight();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getFontStyle_FontHeight(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().getCSSFontHeight();
+ }
+ }
+
+ public boolean isCSSBold() {
+ boolean value = super.isBold();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getFontStyle_Bold(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().isCSSBold();
+ }
+ }
+
+ public boolean isCSSItalic() {
+ boolean value = super.isItalic();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getFontStyle_Italic(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().isCSSItalic();
+ }
+ }
+
+ public boolean isCSSUnderline() {
+ boolean value = super.isUnderline();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getFontStyle_Underline(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().isCSSUnderline();
+ }
+ }
+
+ public boolean isCSSStrikeThrough() {
+ boolean value = super.isStrikeThrough();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getFontStyle_StrikeThrough(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().isCSSStrikeThrough();
+ }
+ }
+
+ public java.lang.String getCSSDescription() {
+ java.lang.String value = super.getDescription();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getDescriptionStyle_Description(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().getCSSDescription();
+ }
+ }
+
+ public int getCSSFillColor() {
+ int value = super.getFillColor();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getFillStyle_FillColor(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().getCSSFillColor();
+ }
+ }
+
+ public int getCSSTransparency() {
+ int value = super.getTransparency();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getFillStyle_Transparency(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().getCSSTransparency();
+ }
+ }
+
+ public org.eclipse.gmf.runtime.notation.datatype.GradientData getCSSGradient() {
+ org.eclipse.gmf.runtime.notation.datatype.GradientData value = super.getGradient();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getFillStyle_Gradient(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().getCSSGradient();
+ }
+ }
+
+ public int getCSSLineColor() {
+ int value = super.getLineColor();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getLineStyle_LineColor(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().getCSSLineColor();
+ }
+ }
+
+ public int getCSSLineWidth() {
+ int value = super.getLineWidth();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getLineStyle_LineWidth(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().getCSSLineWidth();
+ }
+ }
+
+ public int getCSSRoundedBendpointsRadius() {
+ int value = super.getRoundedBendpointsRadius();
+
+ if(ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius(), value)) {
+ return value;
+ } else {
+ return getShapeStyle().getCSSRoundedBendpointsRadius();
+ }
+ }
+
+
+ @Override
+ public int getFontColor() {
+ //return super.getFontColor();
+ return getCSSFontColor();
+ }
+
+ @Override
+ public java.lang.String getFontName() {
+ //return super.getFontName();
+ return getCSSFontName();
+ }
+
+ @Override
+ public int getFontHeight() {
+ //return super.getFontHeight();
+ return getCSSFontHeight();
+ }
+
+ @Override
+ public boolean isBold() {
+ //return super.isBold();
+ return isCSSBold();
+ }
+
+ @Override
+ public boolean isItalic() {
+ //return super.isItalic();
+ return isCSSItalic();
+ }
+
+ @Override
+ public boolean isUnderline() {
+ //return super.isUnderline();
+ return isCSSUnderline();
+ }
+
+ @Override
+ public boolean isStrikeThrough() {
+ //return super.isStrikeThrough();
+ return isCSSStrikeThrough();
+ }
+
+ @Override
+ public java.lang.String getDescription() {
+ //return super.getDescription();
+ return getCSSDescription();
+ }
+
+ @Override
+ public int getFillColor() {
+ //return super.getFillColor();
+ return getCSSFillColor();
+ }
+
+ @Override
+ public int getTransparency() {
+ //return super.getTransparency();
+ return getCSSTransparency();
+ }
+
+ @Override
+ public org.eclipse.gmf.runtime.notation.datatype.GradientData getGradient() {
+ //return super.getGradient();
+ return getCSSGradient();
+ }
+
+ @Override
+ public int getLineColor() {
+ //return super.getLineColor();
+ return getCSSLineColor();
+ }
+
+ @Override
+ public int getLineWidth() {
+ //return super.getLineWidth();
+ return getCSSLineWidth();
+ }
+
+ @Override
+ public int getRoundedBendpointsRadius() {
+ //return super.getRoundedBendpointsRadius();
+ return getCSSRoundedBendpointsRadius();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setVisible(boolean value) {
+ super.setVisible(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Visible();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setType(java.lang.String value) {
+ super.setType(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Type();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setMutable(boolean value) {
+ super.setMutable(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Mutable();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setFontColor(int value) {
+ super.setFontColor(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_FontColor();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setFontName(java.lang.String value) {
+ super.setFontName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_FontName();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setFontHeight(int value) {
+ super.setFontHeight(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_FontHeight();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setBold(boolean value) {
+ super.setBold(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_Bold();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setItalic(boolean value) {
+ super.setItalic(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_Italic();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setUnderline(boolean value) {
+ super.setUnderline(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_Underline();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setStrikeThrough(boolean value) {
+ super.setStrikeThrough(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_StrikeThrough();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setDescription(java.lang.String value) {
+ super.setDescription(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDescriptionStyle_Description();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setFillColor(int value) {
+ super.setFillColor(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFillStyle_FillColor();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setTransparency(int value) {
+ super.setTransparency(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFillStyle_Transparency();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setGradient(org.eclipse.gmf.runtime.notation.datatype.GradientData value) {
+ super.setGradient(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFillStyle_Gradient();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setLineColor(int value) {
+ super.setLineColor(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getLineStyle_LineColor();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setLineWidth(int value) {
+ super.setLineWidth(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getLineStyle_LineWidth();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setRoundedBendpointsRadius(int value) {
+ super.setRoundedBendpointsRadius(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(this, feature);
+ }
+
+ public boolean showElementIcon() {
+ return getCustomStyle().showElementIcon();
+ }
+
+ public int getQualifiedNameDepth() {
+ return getCustomStyle().getQualifiedNameDepth();
+ }
+
+ public boolean showShadow() {
+ return getCustomStyle().showShadow();
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSShapeStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSShapeStyleImpl.java
new file mode 100644
index 00000000000..40209121b56
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSShapeStyleImpl.java
@@ -0,0 +1,420 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.ShapeStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSShapeStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSShapeStyleDelegate;
+
+public class CSSShapeStyleImpl extends ShapeStyleImpl implements CSSShapeStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSShapeStyle shapeStyle;
+
+ protected CSSShapeStyle getShapeStyle() {
+ if(shapeStyle == null) {
+ shapeStyle = new CSSShapeStyleDelegate(this, getEngine());
+ }
+ return shapeStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public int getCSSFontColor(){
+ int value = super.getFontColor();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_FontColor(), value)){
+ return value;
+ } else {
+ return getShapeStyle().getCSSFontColor();
+ }
+ }
+
+ public java.lang.String getCSSFontName(){
+ java.lang.String value = super.getFontName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_FontName(), value)){
+ return value;
+ } else {
+ return getShapeStyle().getCSSFontName();
+ }
+ }
+
+ public int getCSSFontHeight(){
+ int value = super.getFontHeight();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_FontHeight(), value)){
+ return value;
+ } else {
+ return getShapeStyle().getCSSFontHeight();
+ }
+ }
+
+ public boolean isCSSBold(){
+ boolean value = super.isBold();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_Bold(), value)){
+ return value;
+ } else {
+ return getShapeStyle().isCSSBold();
+ }
+ }
+
+ public boolean isCSSItalic(){
+ boolean value = super.isItalic();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_Italic(), value)){
+ return value;
+ } else {
+ return getShapeStyle().isCSSItalic();
+ }
+ }
+
+ public boolean isCSSUnderline(){
+ boolean value = super.isUnderline();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_Underline(), value)){
+ return value;
+ } else {
+ return getShapeStyle().isCSSUnderline();
+ }
+ }
+
+ public boolean isCSSStrikeThrough(){
+ boolean value = super.isStrikeThrough();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFontStyle_StrikeThrough(), value)){
+ return value;
+ } else {
+ return getShapeStyle().isCSSStrikeThrough();
+ }
+ }
+
+ public java.lang.String getCSSDescription(){
+ java.lang.String value = super.getDescription();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getDescriptionStyle_Description(), value)){
+ return value;
+ } else {
+ return getShapeStyle().getCSSDescription();
+ }
+ }
+
+ public int getCSSFillColor(){
+ int value = super.getFillColor();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFillStyle_FillColor(), value)){
+ return value;
+ } else {
+ return getShapeStyle().getCSSFillColor();
+ }
+ }
+
+ public int getCSSTransparency(){
+ int value = super.getTransparency();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFillStyle_Transparency(), value)){
+ return value;
+ } else {
+ return getShapeStyle().getCSSTransparency();
+ }
+ }
+
+ public org.eclipse.gmf.runtime.notation.datatype.GradientData getCSSGradient(){
+ org.eclipse.gmf.runtime.notation.datatype.GradientData value = super.getGradient();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getFillStyle_Gradient(), value)){
+ return value;
+ } else {
+ return getShapeStyle().getCSSGradient();
+ }
+ }
+
+ public int getCSSLineColor(){
+ int value = super.getLineColor();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getLineStyle_LineColor(), value)){
+ return value;
+ } else {
+ return getShapeStyle().getCSSLineColor();
+ }
+ }
+
+ public int getCSSLineWidth(){
+ int value = super.getLineWidth();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getLineStyle_LineWidth(), value)){
+ return value;
+ } else {
+ return getShapeStyle().getCSSLineWidth();
+ }
+ }
+
+ public int getCSSRoundedBendpointsRadius(){
+ int value = super.getRoundedBendpointsRadius();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius(), value)){
+ return value;
+ } else {
+ return getShapeStyle().getCSSRoundedBendpointsRadius();
+ }
+ }
+
+
+ @Override
+ public int getFontColor(){
+ //return super.getFontColor();
+ return getCSSFontColor();
+ }
+
+ @Override
+ public java.lang.String getFontName(){
+ //return super.getFontName();
+ return getCSSFontName();
+ }
+
+ @Override
+ public int getFontHeight(){
+ //return super.getFontHeight();
+ return getCSSFontHeight();
+ }
+
+ @Override
+ public boolean isBold(){
+ //return super.isBold();
+ return isCSSBold();
+ }
+
+ @Override
+ public boolean isItalic(){
+ //return super.isItalic();
+ return isCSSItalic();
+ }
+
+ @Override
+ public boolean isUnderline(){
+ //return super.isUnderline();
+ return isCSSUnderline();
+ }
+
+ @Override
+ public boolean isStrikeThrough(){
+ //return super.isStrikeThrough();
+ return isCSSStrikeThrough();
+ }
+
+ @Override
+ public java.lang.String getDescription(){
+ //return super.getDescription();
+ return getCSSDescription();
+ }
+
+ @Override
+ public int getFillColor(){
+ //return super.getFillColor();
+ return getCSSFillColor();
+ }
+
+ @Override
+ public int getTransparency(){
+ //return super.getTransparency();
+ return getCSSTransparency();
+ }
+
+ @Override
+ public org.eclipse.gmf.runtime.notation.datatype.GradientData getGradient(){
+ //return super.getGradient();
+ return getCSSGradient();
+ }
+
+ @Override
+ public int getLineColor(){
+ //return super.getLineColor();
+ return getCSSLineColor();
+ }
+
+ @Override
+ public int getLineWidth(){
+ //return super.getLineWidth();
+ return getCSSLineWidth();
+ }
+
+ @Override
+ public int getRoundedBendpointsRadius(){
+ //return super.getRoundedBendpointsRadius();
+ return getCSSRoundedBendpointsRadius();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setFontColor(int value){
+ super.setFontColor(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_FontColor();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setFontName(java.lang.String value){
+ super.setFontName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_FontName();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setFontHeight(int value){
+ super.setFontHeight(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_FontHeight();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setBold(boolean value){
+ super.setBold(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_Bold();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setItalic(boolean value){
+ super.setItalic(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_Italic();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setUnderline(boolean value){
+ super.setUnderline(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_Underline();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setStrikeThrough(boolean value){
+ super.setStrikeThrough(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFontStyle_StrikeThrough();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setDescription(java.lang.String value){
+ super.setDescription(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDescriptionStyle_Description();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setFillColor(int value){
+ super.setFillColor(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFillStyle_FillColor();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setTransparency(int value){
+ super.setTransparency(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFillStyle_Transparency();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setGradient(org.eclipse.gmf.runtime.notation.datatype.GradientData value){
+ super.setGradient(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getFillStyle_Gradient();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setLineColor(int value){
+ super.setLineColor(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getLineStyle_LineColor();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setLineWidth(int value){
+ super.setLineWidth(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getLineStyle_LineWidth();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setRoundedBendpointsRadius(int value){
+ super.setRoundedBendpointsRadius(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSSingleValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSSingleValueStyleImpl.java
new file mode 100644
index 00000000000..81f009b03b5
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSSingleValueStyleImpl.java
@@ -0,0 +1,132 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.SingleValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSSingleValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSSingleValueStyleDelegate;
+
+public class CSSSingleValueStyleImpl extends SingleValueStyleImpl implements CSSSingleValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSSingleValueStyle singleValueStyle;
+
+ protected CSSSingleValueStyle getSingleValueStyle() {
+ if(singleValueStyle == null) {
+ singleValueStyle = new CSSSingleValueStyleDelegate(this, getEngine());
+ }
+ return singleValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getSingleValueStyle().getCSSName();
+ }
+ }
+
+ public java.lang.String getCSSRawValue(){
+ java.lang.String value = super.getRawValue();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getSingleValueStyle_RawValue(), value)){
+ return value;
+ } else {
+ return getSingleValueStyle().getCSSRawValue();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+ @Override
+ public java.lang.String getRawValue(){
+ //return super.getRawValue();
+ return getCSSRawValue();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setRawValue(java.lang.String value){
+ super.setRawValue(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getSingleValueStyle_RawValue();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSSortingStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSSortingStyleImpl.java
new file mode 100644
index 00000000000..b58437bec41
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSSortingStyleImpl.java
@@ -0,0 +1,133 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.Sorting;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.SortingStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSSortingStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSSortingStyleDelegate;
+
+public class CSSSortingStyleImpl extends SortingStyleImpl implements CSSSortingStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSSortingStyle sortingStyle;
+
+ protected CSSSortingStyle getSortingStyle() {
+ if(sortingStyle == null) {
+ sortingStyle = new CSSSortingStyleDelegate(this, getEngine());
+ }
+ return sortingStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public Sorting getCSSSorting(){
+ Sorting value = super.getSorting();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getSortingStyle_Sorting(), value)){
+ return value;
+ } else {
+ return getSortingStyle().getCSSSorting();
+ }
+ }
+
+ public java.util.Map getCSSSortingKeys(){
+ java.util.Map value = super.getSortingKeys();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getSortingStyle_SortingKeys(), value)){
+ return value;
+ } else {
+ return getSortingStyle().getCSSSortingKeys();
+ }
+ }
+
+
+ @Override
+ public Sorting getSorting(){
+ //return super.getSorting();
+ return getCSSSorting();
+ }
+
+ @Override
+ public java.util.Map getSortingKeys(){
+ //return super.getSortingKeys();
+ return getCSSSortingKeys();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setSorting(Sorting value){
+ super.setSorting(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getSortingStyle_Sorting();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setSortingKeys(java.util.Map value){
+ super.setSortingKeys(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getSortingStyle_SortingKeys();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSStandardDiagramImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSStandardDiagramImpl.java
new file mode 100644
index 00000000000..a6d8b3cec04
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSStandardDiagramImpl.java
@@ -0,0 +1,230 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.MeasurementUnit;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.impl.StandardDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDiagramStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSDiagramStyleDelegate;
+
+public class CSSStandardDiagramImpl extends StandardDiagramImpl implements CSSDiagramStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSDiagramStyle diagramStyle;
+
+ protected CSSDiagramStyle getDiagramStyle() {
+ if(diagramStyle == null) {
+ diagramStyle = new CSSDiagramStyleDelegate(this, getEngine());
+ }
+ return diagramStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine() {
+ if(engine == null) {
+ engine = ((CSSDiagramImpl)getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public int getCSSPageX(){
+ int value = super.getPageX();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getPageStyle_PageX(), value)){
+ return value;
+ } else {
+ return getDiagramStyle().getCSSPageX();
+ }
+ }
+
+ public int getCSSPageY(){
+ int value = super.getPageY();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getPageStyle_PageY(), value)){
+ return value;
+ } else {
+ return getDiagramStyle().getCSSPageY();
+ }
+ }
+
+ public int getCSSPageWidth(){
+ int value = super.getPageWidth();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getPageStyle_PageWidth(), value)){
+ return value;
+ } else {
+ return getDiagramStyle().getCSSPageWidth();
+ }
+ }
+
+ public int getCSSPageHeight(){
+ int value = super.getPageHeight();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getPageStyle_PageHeight(), value)){
+ return value;
+ } else {
+ return getDiagramStyle().getCSSPageHeight();
+ }
+ }
+
+ public java.lang.String getCSSDescription(){
+ java.lang.String value = super.getDescription();
+
+ if (ForceValueHelper.isSet(this, NotationPackage.eINSTANCE.getDescriptionStyle_Description(), value)){
+ return value;
+ } else {
+ return getDiagramStyle().getCSSDescription();
+ }
+ }
+
+
+ @Override
+ public int getPageX(){
+ //return super.getPageX();
+ return getCSSPageX();
+ }
+
+ @Override
+ public int getPageY(){
+ //return super.getPageY();
+ return getCSSPageY();
+ }
+
+ @Override
+ public int getPageWidth(){
+ //return super.getPageWidth();
+ return getCSSPageWidth();
+ }
+
+ @Override
+ public int getPageHeight(){
+ //return super.getPageHeight();
+ return getCSSPageHeight();
+ }
+
+ @Override
+ public java.lang.String getDescription(){
+ //return super.getDescription();
+ return getCSSDescription();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setVisible(boolean value){
+ super.setVisible(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Visible();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setType(java.lang.String value){
+ super.setType(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Type();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setMutable(boolean value){
+ super.setMutable(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getView_Mutable();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDiagram_Name();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setMeasurementUnit(MeasurementUnit value){
+ super.setMeasurementUnit(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDiagram_MeasurementUnit();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setPageX(int value){
+ super.setPageX(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getPageStyle_PageX();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setPageY(int value){
+ super.setPageY(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getPageStyle_PageY();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setPageWidth(int value){
+ super.setPageWidth(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getPageStyle_PageWidth();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setPageHeight(int value){
+ super.setPageHeight(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getPageStyle_PageHeight();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ @Override
+ public void setDescription(java.lang.String value){
+ super.setDescription(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getDescriptionStyle_Description();
+ ForceValueHelper.setValue(this, feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(this, feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSStringListValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSStringListValueStyleImpl.java
new file mode 100644
index 00000000000..c9413124a1f
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSStringListValueStyleImpl.java
@@ -0,0 +1,125 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.StringListValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSStringListValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSStringListValueStyleDelegate;
+
+public class CSSStringListValueStyleImpl extends StringListValueStyleImpl implements CSSStringListValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSStringListValueStyle stringListValueStyle;
+
+ protected CSSStringListValueStyle getStringListValueStyle() {
+ if(stringListValueStyle == null) {
+ stringListValueStyle = new CSSStringListValueStyleDelegate(this, getEngine());
+ }
+ return stringListValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getStringListValueStyle().getCSSName();
+ }
+ }
+
+ public EList getCSSStringListValue(){
+ EList value = super.getStringListValue();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getStringListValueStyle_StringListValue(), value)){
+ return value;
+ } else {
+ return getStringListValueStyle().getCSSStringListValue();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+ @Override
+ public EList getStringListValue(){
+ //return super.getStringListValue();
+ return getCSSStringListValue();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSStringValueStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSStringValueStyleImpl.java
new file mode 100644
index 00000000000..dbc3e4cfc0d
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSStringValueStyleImpl.java
@@ -0,0 +1,132 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.StringValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSStringValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSStringValueStyleDelegate;
+
+public class CSSStringValueStyleImpl extends StringValueStyleImpl implements CSSStringValueStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSStringValueStyle stringValueStyle;
+
+ protected CSSStringValueStyle getStringValueStyle() {
+ if(stringValueStyle == null) {
+ stringValueStyle = new CSSStringValueStyleDelegate(this, getEngine());
+ }
+ return stringValueStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public java.lang.String getCSSName(){
+ java.lang.String value = super.getName();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getNamedStyle_Name(), value)){
+ return value;
+ } else {
+ return getStringValueStyle().getCSSName();
+ }
+ }
+
+ public java.lang.String getCSSStringValue(){
+ java.lang.String value = super.getStringValue();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getStringValueStyle_StringValue(), value)){
+ return value;
+ } else {
+ return getStringValueStyle().getCSSStringValue();
+ }
+ }
+
+
+ @Override
+ public java.lang.String getName(){
+ //return super.getName();
+ return getCSSName();
+ }
+
+ @Override
+ public java.lang.String getStringValue(){
+ //return super.getStringValue();
+ return getCSSStringValue();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setName(java.lang.String value){
+ super.setName(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getNamedStyle_Name();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ @Override
+ public void setStringValue(java.lang.String value){
+ super.setStringValue(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getStringValueStyle_StringValue();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSTextStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSTextStyleImpl.java
new file mode 100644
index 00000000000..6e44a44ab1b
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSTextStyleImpl.java
@@ -0,0 +1,109 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.TextAlignment;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.TextStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSTextStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSTextStyleDelegate;
+
+public class CSSTextStyleImpl extends TextStyleImpl implements CSSTextStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSTextStyle textStyle;
+
+ protected CSSTextStyle getTextStyle() {
+ if(textStyle == null) {
+ textStyle = new CSSTextStyleDelegate(this, getEngine());
+ }
+ return textStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public TextAlignment getCSSTextAlignment(){
+ TextAlignment value = super.getTextAlignment();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getTextStyle_TextAlignment(), value)){
+ return value;
+ } else {
+ return getTextStyle().getCSSTextAlignment();
+ }
+ }
+
+
+ @Override
+ public TextAlignment getTextAlignment(){
+ //return super.getTextAlignment();
+ return getCSSTextAlignment();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setTextAlignment(TextAlignment value){
+ super.setTextAlignment(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getTextStyle_TextAlignment();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSTitleStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSTitleStyleImpl.java
new file mode 100644
index 00000000000..4cc1a922ce4
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/CSSTitleStyleImpl.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.gmf.runtime.notation.impl.TitleStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.ForceValueHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSTitleStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.impl.CSSTitleStyleDelegate;
+
+public class CSSTitleStyleImpl extends TitleStyleImpl implements CSSTitleStyle {
+
+ protected ExtendedCSSEngine engine;
+
+ private CSSTitleStyle titleStyle;
+
+ protected CSSTitleStyle getTitleStyle() {
+ if(titleStyle == null) {
+ titleStyle = new CSSTitleStyleDelegate(this, getEngine());
+ }
+ return titleStyle;
+ }
+
+ protected ExtendedCSSEngine getEngine(){
+ if (engine == null){
+ engine = ((CSSDiagramImpl)findView().getDiagram()).getEngine();
+ }
+ return engine;
+ }
+
+ protected View findView(){
+ EObject parent = eContainer();
+ while (! (parent instanceof View) && parent != null){
+ parent = parent.eContainer();
+ }
+
+ if (parent != null){
+ return (View)parent;
+ }
+
+ return null;
+ }
+
+
+ //////////////////////////////////////////
+ // Forwards accesses to CSS properties //
+ //////////////////////////////////////////
+
+
+ public boolean isCSSShowTitle(){
+ boolean value = super.isShowTitle();
+
+ if (ForceValueHelper.isSet(findView(), this, NotationPackage.eINSTANCE.getTitleStyle_ShowTitle(), value)){
+ return value;
+ } else {
+ return getTitleStyle().isCSSShowTitle();
+ }
+ }
+
+
+ @Override
+ public boolean isShowTitle(){
+ //return super.isShowTitle();
+ return isCSSShowTitle();
+ }
+
+
+
+ ////////////////////////////////////////////////
+ // Implements a setter for each CSS property //
+ ////////////////////////////////////////////////
+
+ @Override
+ public void setShowTitle(boolean value){
+ super.setShowTitle(value);
+
+ EStructuralFeature feature = NotationPackage.eINSTANCE.getTitleStyle_ShowTitle();
+ ForceValueHelper.setValue(findView(), feature, value);
+ }
+
+ //////////////////////////////////
+ // Implements the unset method //
+ //////////////////////////////////
+
+ @Override
+ public void eUnset(int featureId) {
+ super.eUnset(featureId);
+
+ EStructuralFeature feature = eDynamicFeature(featureId);
+ ForceValueHelper.unsetValue(findView(), feature);
+ }
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/factory/CSSNotationFactory.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/factory/CSSNotationFactory.java
new file mode 100644
index 00000000000..ae804dc14d2
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/factory/CSSNotationFactory.java
@@ -0,0 +1,364 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.factory;
+
+import org.eclipse.gmf.runtime.notation.ArrowStyle;
+import org.eclipse.gmf.runtime.notation.BasicCompartment;
+import org.eclipse.gmf.runtime.notation.BasicSemanticCompartment;
+import org.eclipse.gmf.runtime.notation.BooleanListValueStyle;
+import org.eclipse.gmf.runtime.notation.BooleanValueStyle;
+import org.eclipse.gmf.runtime.notation.ByteArrayValueStyle;
+import org.eclipse.gmf.runtime.notation.CanonicalStyle;
+import org.eclipse.gmf.runtime.notation.Compartment;
+import org.eclipse.gmf.runtime.notation.Connector;
+import org.eclipse.gmf.runtime.notation.ConnectorStyle;
+import org.eclipse.gmf.runtime.notation.DataTypeStyle;
+import org.eclipse.gmf.runtime.notation.DescriptionStyle;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.DiagramLinkStyle;
+import org.eclipse.gmf.runtime.notation.DiagramStyle;
+import org.eclipse.gmf.runtime.notation.DoubleListValueStyle;
+import org.eclipse.gmf.runtime.notation.DoubleValueStyle;
+import org.eclipse.gmf.runtime.notation.DrawerStyle;
+import org.eclipse.gmf.runtime.notation.EObjectListValueStyle;
+import org.eclipse.gmf.runtime.notation.EObjectValueStyle;
+import org.eclipse.gmf.runtime.notation.FillStyle;
+import org.eclipse.gmf.runtime.notation.FilteringStyle;
+import org.eclipse.gmf.runtime.notation.FontStyle;
+import org.eclipse.gmf.runtime.notation.GuideStyle;
+import org.eclipse.gmf.runtime.notation.HintedDiagramLinkStyle;
+import org.eclipse.gmf.runtime.notation.ImageBufferStyle;
+import org.eclipse.gmf.runtime.notation.ImageStyle;
+import org.eclipse.gmf.runtime.notation.IntListValueStyle;
+import org.eclipse.gmf.runtime.notation.IntValueStyle;
+import org.eclipse.gmf.runtime.notation.LineStyle;
+import org.eclipse.gmf.runtime.notation.LineTypeStyle;
+import org.eclipse.gmf.runtime.notation.ListCompartment;
+import org.eclipse.gmf.runtime.notation.ListValueStyle;
+import org.eclipse.gmf.runtime.notation.MultiDiagramLinkStyle;
+import org.eclipse.gmf.runtime.notation.NamedStyle;
+import org.eclipse.gmf.runtime.notation.PageStyle;
+import org.eclipse.gmf.runtime.notation.PropertiesSetStyle;
+import org.eclipse.gmf.runtime.notation.RoundedCornersStyle;
+import org.eclipse.gmf.runtime.notation.RoutingStyle;
+import org.eclipse.gmf.runtime.notation.SemanticListCompartment;
+import org.eclipse.gmf.runtime.notation.Shape;
+import org.eclipse.gmf.runtime.notation.ShapeStyle;
+import org.eclipse.gmf.runtime.notation.SingleValueStyle;
+import org.eclipse.gmf.runtime.notation.SortingStyle;
+import org.eclipse.gmf.runtime.notation.StandardDiagram;
+import org.eclipse.gmf.runtime.notation.StringListValueStyle;
+import org.eclipse.gmf.runtime.notation.StringValueStyle;
+import org.eclipse.gmf.runtime.notation.TextStyle;
+import org.eclipse.gmf.runtime.notation.TitleStyle;
+import org.eclipse.gmf.runtime.notation.impl.NotationFactoryImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSArrowStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSBasicCompartmentImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSBasicSemanticCompartmentImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSBooleanListValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSBooleanValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSByteArrayValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSCanonicalStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSCompartmentImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSConnectorImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSConnectorStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSDataTypeStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSDescriptionStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSDiagramLinkStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSDiagramStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSDoubleListValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSDoubleValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSDrawerStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSEObjectListValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSEObjectValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSFillStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSFilteringStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSFontStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSGuideStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSHintedDiagramLinkStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSImageBufferStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSImageStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSIntListValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSIntValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSLineStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSLineTypeStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSListCompartmentImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSListValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSMultiDiagramLinkStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSNamedStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSPageStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSPropertiesSetStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSRoundedCornersStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSRoutingStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSSemanticListCompartmentImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSShapeImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSShapeStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSSingleValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSSortingStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSStandardDiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSStringListValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSStringValueStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSTextStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.CSSTitleStyleImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagramImpl;
+
+public class CSSNotationFactory extends NotationFactoryImpl {
+
+ public static CSSNotationFactory eINSTANCE = new CSSNotationFactory();
+
+ @Override
+ public Diagram createDiagram(){
+ return new CSSDiagramImpl();
+ }
+
+
+ @Override
+ public FillStyle createFillStyle() {
+ return new CSSFillStyleImpl();
+ }
+
+ @Override
+ public LineStyle createLineStyle() {
+ return new CSSLineStyleImpl();
+ }
+
+ @Override
+ public FontStyle createFontStyle() {
+ return new CSSFontStyleImpl();
+ }
+
+ @Override
+ public TitleStyle createTitleStyle() {
+ return new CSSTitleStyleImpl();
+ }
+
+ @Override
+ public SortingStyle createSortingStyle() {
+ return new CSSSortingStyleImpl();
+ }
+
+ @Override
+ public DescriptionStyle createDescriptionStyle() {
+ return new CSSDescriptionStyleImpl();
+ }
+
+ @Override
+ public RoutingStyle createRoutingStyle() {
+ return new CSSRoutingStyleImpl();
+ }
+
+ @Override
+ public CanonicalStyle createCanonicalStyle() {
+ return new CSSCanonicalStyleImpl();
+ }
+
+ @Override
+ public ShapeStyle createShapeStyle() {
+ return new CSSShapeStyleImpl();
+ }
+
+ @Override
+ public ConnectorStyle createConnectorStyle() {
+ return new CSSConnectorStyleImpl();
+ }
+
+ @Override
+ public PageStyle createPageStyle() {
+ return new CSSPageStyleImpl();
+ }
+
+ @Override
+ public DrawerStyle createDrawerStyle() {
+ return new CSSDrawerStyleImpl();
+ }
+
+ @Override
+ public GuideStyle createGuideStyle() {
+ return new CSSGuideStyleImpl();
+ }
+
+ @Override
+ public FilteringStyle createFilteringStyle() {
+ return new CSSFilteringStyleImpl();
+ }
+
+ @Override
+ public DiagramStyle createDiagramStyle() {
+ return new CSSDiagramStyleImpl();
+ }
+
+ @Override
+ public ImageStyle createImageStyle() {
+ return new CSSImageStyleImpl();
+ }
+
+ @Override
+ public ImageBufferStyle createImageBufferStyle() {
+ return new CSSImageBufferStyleImpl();
+ }
+
+ @Override
+ public PropertiesSetStyle createPropertiesSetStyle() {
+ return new CSSPropertiesSetStyleImpl();
+ }
+
+ @Override
+ public SingleValueStyle createSingleValueStyle() {
+ return new CSSSingleValueStyleImpl();
+ }
+
+ @Override
+ public ListValueStyle createListValueStyle() {
+ return new CSSListValueStyleImpl();
+ }
+
+ @Override
+ public NamedStyle createNamedStyle() {
+ return new CSSNamedStyleImpl();
+ }
+
+ @Override
+ public DataTypeStyle createDataTypeStyle() {
+ return new CSSDataTypeStyleImpl();
+ }
+
+ @Override
+ public IntValueStyle createIntValueStyle() {
+ return new CSSIntValueStyleImpl();
+ }
+
+ @Override
+ public IntListValueStyle createIntListValueStyle() {
+ return new CSSIntListValueStyleImpl();
+ }
+
+ @Override
+ public BooleanValueStyle createBooleanValueStyle() {
+ return new CSSBooleanValueStyleImpl();
+ }
+
+ @Override
+ public DoubleValueStyle createDoubleValueStyle() {
+ return new CSSDoubleValueStyleImpl();
+ }
+
+ @Override
+ public DoubleListValueStyle createDoubleListValueStyle() {
+ return new CSSDoubleListValueStyleImpl();
+ }
+
+ @Override
+ public StringValueStyle createStringValueStyle() {
+ return new CSSStringValueStyleImpl();
+ }
+
+ @Override
+ public StringListValueStyle createStringListValueStyle() {
+ return new CSSStringListValueStyleImpl();
+ }
+
+ @Override
+ public EObjectValueStyle createEObjectValueStyle() {
+ return new CSSEObjectValueStyleImpl();
+ }
+
+ @Override
+ public EObjectListValueStyle createEObjectListValueStyle() {
+ return new CSSEObjectListValueStyleImpl();
+ }
+
+ @Override
+ public ByteArrayValueStyle createByteArrayValueStyle() {
+ return new CSSByteArrayValueStyleImpl();
+ }
+
+ @Override
+ public BooleanListValueStyle createBooleanListValueStyle() {
+ return new CSSBooleanListValueStyleImpl();
+ }
+
+ @Override
+ public HintedDiagramLinkStyle createHintedDiagramLinkStyle() {
+ return new CSSHintedDiagramLinkStyleImpl();
+ }
+
+ @Override
+ public DiagramLinkStyle createDiagramLinkStyle() {
+ return new CSSDiagramLinkStyleImpl();
+ }
+
+ @Override
+ public MultiDiagramLinkStyle createMultiDiagramLinkStyle() {
+ return new CSSMultiDiagramLinkStyleImpl();
+ }
+
+ @Override
+ public TextStyle createTextStyle() {
+ return new CSSTextStyleImpl();
+ }
+
+ @Override
+ public LineTypeStyle createLineTypeStyle() {
+ return new CSSLineTypeStyleImpl();
+ }
+
+ @Override
+ public ArrowStyle createArrowStyle() {
+ return new CSSArrowStyleImpl();
+ }
+
+ @Override
+ public Shape createShape() {
+ return new CSSShapeImpl();
+ }
+
+ @Override
+ public Compartment createCompartment() {
+ return new CSSCompartmentImpl();
+ }
+
+ @Override
+ public ListCompartment createListCompartment() {
+ return new CSSListCompartmentImpl();
+ }
+
+ @Override
+ public Connector createConnector() {
+ return new CSSConnectorImpl();
+ }
+
+ @Override
+ public StandardDiagram createStandardDiagram() {
+ return new CSSStandardDiagramImpl();
+ }
+
+ @Override
+ public BasicCompartment createBasicCompartment() {
+ return new CSSBasicCompartmentImpl();
+ }
+
+ @Override
+ public BasicSemanticCompartment createBasicSemanticCompartment() {
+ return new CSSBasicSemanticCompartmentImpl();
+ }
+
+ @Override
+ public SemanticListCompartment createSemanticListCompartment() {
+ return new CSSSemanticListCompartmentImpl();
+ }
+
+ @Override
+ public RoundedCornersStyle createRoundedCornersStyle() {
+ return new CSSRoundedCornersStyleImpl();
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/EmbeddedStyleSheet.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/EmbeddedStyleSheet.java
new file mode 100644
index 00000000000..09e267160c5
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/EmbeddedStyleSheet.java
@@ -0,0 +1,53 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Embedded Style Sheet</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.EmbeddedStyleSheet#getContent <em>Content</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage#getEmbeddedStyleSheet()
+ * @model
+ * @generated
+ */
+public interface EmbeddedStyleSheet extends StyleSheet {
+ /**
+ * Returns the value of the '<em><b>Content</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Content</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Content</em>' attribute.
+ * @see #setContent(String)
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage#getEmbeddedStyleSheet_Content()
+ * @model required="true"
+ * @generated
+ */
+ String getContent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.EmbeddedStyleSheet#getContent <em>Content</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Content</em>' attribute.
+ * @see #getContent()
+ * @generated
+ */
+ void setContent(String value);
+
+} // EmbeddedStyleSheet
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/ModelStyleSheets.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/ModelStyleSheets.java
new file mode 100644
index 00000000000..cab154744d0
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/ModelStyleSheets.java
@@ -0,0 +1,46 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EModelElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Model Style Sheets</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheets#getStylesheets <em>Stylesheets</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage#getModelStyleSheets()
+ * @model
+ * @generated
+ */
+public interface ModelStyleSheets extends EModelElement {
+ /**
+ * Returns the value of the '<em><b>Stylesheets</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheet}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stylesheets</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stylesheets</em>' containment reference list.
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage#getModelStyleSheets_Stylesheets()
+ * @model containment="true"
+ * @generated
+ */
+ EList<StyleSheet> getStylesheets();
+
+} // ModelStyleSheets
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/ModelStyleSheetsFactory.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/ModelStyleSheetsFactory.java
new file mode 100644
index 00000000000..4ea6bdbb807
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/ModelStyleSheetsFactory.java
@@ -0,0 +1,64 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage
+ * @generated
+ */
+public interface ModelStyleSheetsFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ModelStyleSheetsFactory eINSTANCE = org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Model Style Sheets</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Model Style Sheets</em>'.
+ * @generated
+ */
+ ModelStyleSheets createModelStyleSheets();
+
+ /**
+ * Returns a new object of class '<em>Style Sheet Reference</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Style Sheet Reference</em>'.
+ * @generated
+ */
+ StyleSheetReference createStyleSheetReference();
+
+ /**
+ * Returns a new object of class '<em>Embedded Style Sheet</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Embedded Style Sheet</em>'.
+ * @generated
+ */
+ EmbeddedStyleSheet createEmbeddedStyleSheet();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ModelStyleSheetsPackage getModelStyleSheetsPackage();
+
+} //ModelStyleSheetsFactory
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/ModelStyleSheetsPackage.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/ModelStyleSheetsPackage.java
new file mode 100644
index 00000000000..ab81c0fcbf1
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/ModelStyleSheetsPackage.java
@@ -0,0 +1,337 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface ModelStyleSheetsPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "modelstylesheets";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/infra/gmfdiag/css";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "css";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ModelStyleSheetsPackage eINSTANCE = org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsImpl <em>Model Style Sheets</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsImpl
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsPackageImpl#getModelStyleSheets()
+ * @generated
+ */
+ int MODEL_STYLE_SHEETS = 0;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MODEL_STYLE_SHEETS__EANNOTATIONS = EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Stylesheets</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MODEL_STYLE_SHEETS__STYLESHEETS = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Model Style Sheets</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MODEL_STYLE_SHEETS_FEATURE_COUNT = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.StyleSheetImpl <em>Style Sheet</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.StyleSheetImpl
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsPackageImpl#getStyleSheet()
+ * @generated
+ */
+ int STYLE_SHEET = 1;
+
+ /**
+ * The number of structural features of the '<em>Style Sheet</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STYLE_SHEET_FEATURE_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.StyleSheetReferenceImpl <em>Style Sheet Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.StyleSheetReferenceImpl
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsPackageImpl#getStyleSheetReference()
+ * @generated
+ */
+ int STYLE_SHEET_REFERENCE = 2;
+
+ /**
+ * The feature id for the '<em><b>Path</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STYLE_SHEET_REFERENCE__PATH = STYLE_SHEET_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Style Sheet Reference</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STYLE_SHEET_REFERENCE_FEATURE_COUNT = STYLE_SHEET_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.EmbeddedStyleSheetImpl <em>Embedded Style Sheet</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.EmbeddedStyleSheetImpl
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsPackageImpl#getEmbeddedStyleSheet()
+ * @generated
+ */
+ int EMBEDDED_STYLE_SHEET = 3;
+
+ /**
+ * The feature id for the '<em><b>Content</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EMBEDDED_STYLE_SHEET__CONTENT = STYLE_SHEET_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Embedded Style Sheet</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EMBEDDED_STYLE_SHEET_FEATURE_COUNT = STYLE_SHEET_FEATURE_COUNT + 1;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheets <em>Model Style Sheets</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Model Style Sheets</em>'.
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheets
+ * @generated
+ */
+ EClass getModelStyleSheets();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheets#getStylesheets <em>Stylesheets</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Stylesheets</em>'.
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheets#getStylesheets()
+ * @see #getModelStyleSheets()
+ * @generated
+ */
+ EReference getModelStyleSheets_Stylesheets();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheet <em>Style Sheet</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Style Sheet</em>'.
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheet
+ * @generated
+ */
+ EClass getStyleSheet();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheetReference <em>Style Sheet Reference</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Style Sheet Reference</em>'.
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheetReference
+ * @generated
+ */
+ EClass getStyleSheetReference();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheetReference#getPath <em>Path</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Path</em>'.
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheetReference#getPath()
+ * @see #getStyleSheetReference()
+ * @generated
+ */
+ EAttribute getStyleSheetReference_Path();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.EmbeddedStyleSheet <em>Embedded Style Sheet</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Embedded Style Sheet</em>'.
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.EmbeddedStyleSheet
+ * @generated
+ */
+ EClass getEmbeddedStyleSheet();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.EmbeddedStyleSheet#getContent <em>Content</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Content</em>'.
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.EmbeddedStyleSheet#getContent()
+ * @see #getEmbeddedStyleSheet()
+ * @generated
+ */
+ EAttribute getEmbeddedStyleSheet_Content();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ModelStyleSheetsFactory getModelStyleSheetsFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsImpl <em>Model Style Sheets</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsImpl
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsPackageImpl#getModelStyleSheets()
+ * @generated
+ */
+ EClass MODEL_STYLE_SHEETS = eINSTANCE.getModelStyleSheets();
+
+ /**
+ * The meta object literal for the '<em><b>Stylesheets</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference MODEL_STYLE_SHEETS__STYLESHEETS = eINSTANCE.getModelStyleSheets_Stylesheets();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.StyleSheetImpl <em>Style Sheet</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.StyleSheetImpl
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsPackageImpl#getStyleSheet()
+ * @generated
+ */
+ EClass STYLE_SHEET = eINSTANCE.getStyleSheet();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.StyleSheetReferenceImpl <em>Style Sheet Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.StyleSheetReferenceImpl
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsPackageImpl#getStyleSheetReference()
+ * @generated
+ */
+ EClass STYLE_SHEET_REFERENCE = eINSTANCE.getStyleSheetReference();
+
+ /**
+ * The meta object literal for the '<em><b>Path</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STYLE_SHEET_REFERENCE__PATH = eINSTANCE.getStyleSheetReference_Path();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.EmbeddedStyleSheetImpl <em>Embedded Style Sheet</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.EmbeddedStyleSheetImpl
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsPackageImpl#getEmbeddedStyleSheet()
+ * @generated
+ */
+ EClass EMBEDDED_STYLE_SHEET = eINSTANCE.getEmbeddedStyleSheet();
+
+ /**
+ * The meta object literal for the '<em><b>Content</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute EMBEDDED_STYLE_SHEET__CONTENT = eINSTANCE.getEmbeddedStyleSheet_Content();
+
+ }
+
+} //ModelStyleSheetsPackage
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/StyleSheet.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/StyleSheet.java
new file mode 100644
index 00000000000..5433b1893ea
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/StyleSheet.java
@@ -0,0 +1,22 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Style Sheet</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage#getStyleSheet()
+ * @model abstract="true"
+ * @generated
+ */
+public interface StyleSheet extends EObject {
+} // StyleSheet
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/StyleSheetReference.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/StyleSheetReference.java
new file mode 100644
index 00000000000..62ef45d0bf1
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/StyleSheetReference.java
@@ -0,0 +1,53 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Style Sheet Reference</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheetReference#getPath <em>Path</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage#getStyleSheetReference()
+ * @model
+ * @generated
+ */
+public interface StyleSheetReference extends StyleSheet {
+ /**
+ * Returns the value of the '<em><b>Path</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Path</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Path</em>' attribute.
+ * @see #setPath(String)
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage#getStyleSheetReference_Path()
+ * @model required="true"
+ * @generated
+ */
+ String getPath();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheetReference#getPath <em>Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Path</em>' attribute.
+ * @see #getPath()
+ * @generated
+ */
+ void setPath(String value);
+
+} // StyleSheetReference
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/EmbeddedStyleSheetImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/EmbeddedStyleSheetImpl.java
new file mode 100644
index 00000000000..b945e244cd9
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/EmbeddedStyleSheetImpl.java
@@ -0,0 +1,166 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.EmbeddedStyleSheet;
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Embedded Style Sheet</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.EmbeddedStyleSheetImpl#getContent <em>Content</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EmbeddedStyleSheetImpl extends StyleSheetImpl implements EmbeddedStyleSheet {
+ /**
+ * The default value of the '{@link #getContent() <em>Content</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getContent()
+ * @generated
+ * @ordered
+ */
+ protected static final String CONTENT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getContent() <em>Content</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getContent()
+ * @generated
+ * @ordered
+ */
+ protected String content = CONTENT_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EmbeddedStyleSheetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelStyleSheetsPackage.Literals.EMBEDDED_STYLE_SHEET;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getContent() {
+ return content;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setContent(String newContent) {
+ String oldContent = content;
+ content = newContent;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelStyleSheetsPackage.EMBEDDED_STYLE_SHEET__CONTENT, oldContent, content));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.EMBEDDED_STYLE_SHEET__CONTENT:
+ return getContent();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.EMBEDDED_STYLE_SHEET__CONTENT:
+ setContent((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.EMBEDDED_STYLE_SHEET__CONTENT:
+ setContent(CONTENT_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.EMBEDDED_STYLE_SHEET__CONTENT:
+ return CONTENT_EDEFAULT == null ? content != null : !CONTENT_EDEFAULT.equals(content);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (content: ");
+ result.append(content);
+ result.append(')');
+ return result.toString();
+ }
+
+} //EmbeddedStyleSheetImpl
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/ModelStyleSheetsFactoryImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/ModelStyleSheetsFactoryImpl.java
new file mode 100644
index 00000000000..be74e7baf6a
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/ModelStyleSheetsFactoryImpl.java
@@ -0,0 +1,121 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ModelStyleSheetsFactoryImpl extends EFactoryImpl implements ModelStyleSheetsFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static ModelStyleSheetsFactory init() {
+ try {
+ ModelStyleSheetsFactory theModelStyleSheetsFactory = (ModelStyleSheetsFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/infra/gmfdiag/css");
+ if (theModelStyleSheetsFactory != null) {
+ return theModelStyleSheetsFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ModelStyleSheetsFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelStyleSheetsFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ModelStyleSheetsPackage.MODEL_STYLE_SHEETS: return createModelStyleSheets();
+ case ModelStyleSheetsPackage.STYLE_SHEET_REFERENCE: return createStyleSheetReference();
+ case ModelStyleSheetsPackage.EMBEDDED_STYLE_SHEET: return createEmbeddedStyleSheet();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelStyleSheets createModelStyleSheets() {
+ ModelStyleSheetsImpl modelStyleSheets = new ModelStyleSheetsImpl();
+ return modelStyleSheets;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StyleSheetReference createStyleSheetReference() {
+ StyleSheetReferenceImpl styleSheetReference = new StyleSheetReferenceImpl();
+ return styleSheetReference;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EmbeddedStyleSheet createEmbeddedStyleSheet() {
+ EmbeddedStyleSheetImpl embeddedStyleSheet = new EmbeddedStyleSheetImpl();
+ return embeddedStyleSheet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelStyleSheetsPackage getModelStyleSheetsPackage() {
+ return (ModelStyleSheetsPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ModelStyleSheetsPackage getPackage() {
+ return ModelStyleSheetsPackage.eINSTANCE;
+ }
+
+} //ModelStyleSheetsFactoryImpl
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/ModelStyleSheetsImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/ModelStyleSheetsImpl.java
new file mode 100644
index 00000000000..bd5bdf18933
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/ModelStyleSheetsImpl.java
@@ -0,0 +1,156 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.EModelElementImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheets;
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheet;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Model Style Sheets</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.ModelStyleSheetsImpl#getStylesheets <em>Stylesheets</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ModelStyleSheetsImpl extends EModelElementImpl implements ModelStyleSheets {
+ /**
+ * The cached value of the '{@link #getStylesheets() <em>Stylesheets</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStylesheets()
+ * @generated
+ * @ordered
+ */
+ protected EList<StyleSheet> stylesheets;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ModelStyleSheetsImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelStyleSheetsPackage.Literals.MODEL_STYLE_SHEETS;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<StyleSheet> getStylesheets() {
+ if (stylesheets == null) {
+ stylesheets = new EObjectContainmentEList<StyleSheet>(StyleSheet.class, this, ModelStyleSheetsPackage.MODEL_STYLE_SHEETS__STYLESHEETS);
+ }
+ return stylesheets;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.MODEL_STYLE_SHEETS__STYLESHEETS:
+ return ((InternalEList<?>)getStylesheets()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.MODEL_STYLE_SHEETS__STYLESHEETS:
+ return getStylesheets();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.MODEL_STYLE_SHEETS__STYLESHEETS:
+ getStylesheets().clear();
+ getStylesheets().addAll((Collection<? extends StyleSheet>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.MODEL_STYLE_SHEETS__STYLESHEETS:
+ getStylesheets().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.MODEL_STYLE_SHEETS__STYLESHEETS:
+ return stylesheets != null && !stylesheets.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ModelStyleSheetsImpl
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/ModelStyleSheetsPackageImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/ModelStyleSheetsPackageImpl.java
new file mode 100644
index 00000000000..5b11a9a5fe4
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/ModelStyleSheetsPackageImpl.java
@@ -0,0 +1,277 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.EmbeddedStyleSheet;
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheets;
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsFactory;
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheet;
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheetReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ModelStyleSheetsPackageImpl extends EPackageImpl implements ModelStyleSheetsPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass modelStyleSheetsEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass styleSheetEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass styleSheetReferenceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass embeddedStyleSheetEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ModelStyleSheetsPackageImpl() {
+ super(eNS_URI, ModelStyleSheetsFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link ModelStyleSheetsPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static ModelStyleSheetsPackage init() {
+ if (isInited) return (ModelStyleSheetsPackage)EPackage.Registry.INSTANCE.getEPackage(ModelStyleSheetsPackage.eNS_URI);
+
+ // Obtain or create and register package
+ ModelStyleSheetsPackageImpl theModelStyleSheetsPackage = (ModelStyleSheetsPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ModelStyleSheetsPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ModelStyleSheetsPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theModelStyleSheetsPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theModelStyleSheetsPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theModelStyleSheetsPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ModelStyleSheetsPackage.eNS_URI, theModelStyleSheetsPackage);
+ return theModelStyleSheetsPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getModelStyleSheets() {
+ return modelStyleSheetsEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getModelStyleSheets_Stylesheets() {
+ return (EReference)modelStyleSheetsEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStyleSheet() {
+ return styleSheetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStyleSheetReference() {
+ return styleSheetReferenceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStyleSheetReference_Path() {
+ return (EAttribute)styleSheetReferenceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getEmbeddedStyleSheet() {
+ return embeddedStyleSheetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getEmbeddedStyleSheet_Content() {
+ return (EAttribute)embeddedStyleSheetEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelStyleSheetsFactory getModelStyleSheetsFactory() {
+ return (ModelStyleSheetsFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ modelStyleSheetsEClass = createEClass(MODEL_STYLE_SHEETS);
+ createEReference(modelStyleSheetsEClass, MODEL_STYLE_SHEETS__STYLESHEETS);
+
+ styleSheetEClass = createEClass(STYLE_SHEET);
+
+ styleSheetReferenceEClass = createEClass(STYLE_SHEET_REFERENCE);
+ createEAttribute(styleSheetReferenceEClass, STYLE_SHEET_REFERENCE__PATH);
+
+ embeddedStyleSheetEClass = createEClass(EMBEDDED_STYLE_SHEET);
+ createEAttribute(embeddedStyleSheetEClass, EMBEDDED_STYLE_SHEET__CONTENT);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ modelStyleSheetsEClass.getESuperTypes().add(theEcorePackage.getEModelElement());
+ styleSheetReferenceEClass.getESuperTypes().add(this.getStyleSheet());
+ embeddedStyleSheetEClass.getESuperTypes().add(this.getStyleSheet());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(modelStyleSheetsEClass, ModelStyleSheets.class, "ModelStyleSheets", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getModelStyleSheets_Stylesheets(), this.getStyleSheet(), null, "stylesheets", null, 0, -1, ModelStyleSheets.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(styleSheetEClass, StyleSheet.class, "StyleSheet", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(styleSheetReferenceEClass, StyleSheetReference.class, "StyleSheetReference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getStyleSheetReference_Path(), theEcorePackage.getEString(), "path", null, 1, 1, StyleSheetReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(embeddedStyleSheetEClass, EmbeddedStyleSheet.class, "EmbeddedStyleSheet", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getEmbeddedStyleSheet_Content(), theEcorePackage.getEString(), "content", null, 1, 1, EmbeddedStyleSheet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //ModelStyleSheetsPackageImpl
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/StyleSheetImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/StyleSheetImpl.java
new file mode 100644
index 00000000000..a133fe7afda
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/StyleSheetImpl.java
@@ -0,0 +1,45 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheet;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Style Sheet</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class StyleSheetImpl extends EObjectImpl implements StyleSheet {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StyleSheetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelStyleSheetsPackage.Literals.STYLE_SHEET;
+ }
+
+} //StyleSheetImpl
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/StyleSheetReferenceImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/StyleSheetReferenceImpl.java
new file mode 100644
index 00000000000..9cca0da7b0a
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/impl/StyleSheetReferenceImpl.java
@@ -0,0 +1,166 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheetReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Style Sheet Reference</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.impl.StyleSheetReferenceImpl#getPath <em>Path</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StyleSheetReferenceImpl extends StyleSheetImpl implements StyleSheetReference {
+ /**
+ * The default value of the '{@link #getPath() <em>Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPath()
+ * @generated
+ * @ordered
+ */
+ protected static final String PATH_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPath() <em>Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPath()
+ * @generated
+ * @ordered
+ */
+ protected String path = PATH_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StyleSheetReferenceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelStyleSheetsPackage.Literals.STYLE_SHEET_REFERENCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPath() {
+ return path;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPath(String newPath) {
+ String oldPath = path;
+ path = newPath;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelStyleSheetsPackage.STYLE_SHEET_REFERENCE__PATH, oldPath, path));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.STYLE_SHEET_REFERENCE__PATH:
+ return getPath();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.STYLE_SHEET_REFERENCE__PATH:
+ setPath((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.STYLE_SHEET_REFERENCE__PATH:
+ setPath(PATH_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ModelStyleSheetsPackage.STYLE_SHEET_REFERENCE__PATH:
+ return PATH_EDEFAULT == null ? path != null : !PATH_EDEFAULT.equals(path);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (path: ");
+ result.append(path);
+ result.append(')');
+ return result.toString();
+ }
+
+} //StyleSheetReferenceImpl
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/util/ModelStyleSheetsAdapterFactory.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/util/ModelStyleSheetsAdapterFactory.java
new file mode 100644
index 00000000000..dbe05f74bc3
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/util/ModelStyleSheetsAdapterFactory.java
@@ -0,0 +1,197 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage
+ * @generated
+ */
+public class ModelStyleSheetsAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ModelStyleSheetsPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelStyleSheetsAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ModelStyleSheetsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ModelStyleSheetsSwitch<Adapter> modelSwitch =
+ new ModelStyleSheetsSwitch<Adapter>() {
+ @Override
+ public Adapter caseModelStyleSheets(ModelStyleSheets object) {
+ return createModelStyleSheetsAdapter();
+ }
+ @Override
+ public Adapter caseStyleSheet(StyleSheet object) {
+ return createStyleSheetAdapter();
+ }
+ @Override
+ public Adapter caseStyleSheetReference(StyleSheetReference object) {
+ return createStyleSheetReferenceAdapter();
+ }
+ @Override
+ public Adapter caseEmbeddedStyleSheet(EmbeddedStyleSheet object) {
+ return createEmbeddedStyleSheetAdapter();
+ }
+ @Override
+ public Adapter caseEModelElement(EModelElement object) {
+ return createEModelElementAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheets <em>Model Style Sheets</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheets
+ * @generated
+ */
+ public Adapter createModelStyleSheetsAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheet <em>Style Sheet</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheet
+ * @generated
+ */
+ public Adapter createStyleSheetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheetReference <em>Style Sheet Reference</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.StyleSheetReference
+ * @generated
+ */
+ public Adapter createStyleSheetReferenceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.EmbeddedStyleSheet <em>Embedded Style Sheet</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.EmbeddedStyleSheet
+ * @generated
+ */
+ public Adapter createEmbeddedStyleSheetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EModelElement <em>EModel Element</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.emf.ecore.EModelElement
+ * @generated
+ */
+ public Adapter createEModelElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //ModelStyleSheetsAdapterFactory
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/util/ModelStyleSheetsSwitch.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/util/ModelStyleSheetsSwitch.java
new file mode 100644
index 00000000000..2c9aad3dbd8
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/modelstylesheets/util/ModelStyleSheetsSwitch.java
@@ -0,0 +1,196 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.util;
+
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.gmfdiag.css.modelstylesheets.ModelStyleSheetsPackage
+ * @generated
+ */
+public class ModelStyleSheetsSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ModelStyleSheetsPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelStyleSheetsSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ModelStyleSheetsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @parameter ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case ModelStyleSheetsPackage.MODEL_STYLE_SHEETS: {
+ ModelStyleSheets modelStyleSheets = (ModelStyleSheets)theEObject;
+ T result = caseModelStyleSheets(modelStyleSheets);
+ if (result == null) result = caseEModelElement(modelStyleSheets);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ModelStyleSheetsPackage.STYLE_SHEET: {
+ StyleSheet styleSheet = (StyleSheet)theEObject;
+ T result = caseStyleSheet(styleSheet);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ModelStyleSheetsPackage.STYLE_SHEET_REFERENCE: {
+ StyleSheetReference styleSheetReference = (StyleSheetReference)theEObject;
+ T result = caseStyleSheetReference(styleSheetReference);
+ if (result == null) result = caseStyleSheet(styleSheetReference);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ModelStyleSheetsPackage.EMBEDDED_STYLE_SHEET: {
+ EmbeddedStyleSheet embeddedStyleSheet = (EmbeddedStyleSheet)theEObject;
+ T result = caseEmbeddedStyleSheet(embeddedStyleSheet);
+ if (result == null) result = caseStyleSheet(embeddedStyleSheet);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Model Style Sheets</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Model Style Sheets</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseModelStyleSheets(ModelStyleSheets object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Style Sheet</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Style Sheet</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStyleSheet(StyleSheet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Style Sheet Reference</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Style Sheet Reference</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStyleSheetReference(StyleSheetReference object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Embedded Style Sheet</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Embedded Style Sheet</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEmbeddedStyleSheet(EmbeddedStyleSheet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EModel Element</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EModel Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEModelElement(EModelElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //ModelStyleSheetsSwitch
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSArrowStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSArrowStyle.java
new file mode 100644
index 00000000000..fbb6e165f43
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSArrowStyle.java
@@ -0,0 +1,23 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+import org.eclipse.gmf.runtime.notation.ArrowType;
+
+public interface CSSArrowStyle {
+
+ public ArrowType getCSSArrowSource();
+
+
+ public ArrowType getCSSArrowTarget();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSBooleanListValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSBooleanListValueStyle.java
new file mode 100644
index 00000000000..333f2109049
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSBooleanListValueStyle.java
@@ -0,0 +1,20 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+import org.eclipse.emf.common.util.EList;
+
+public interface CSSBooleanListValueStyle extends CSSNamedStyle{
+
+ public EList getCSSBooleanListValue();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSBooleanValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSBooleanValueStyle.java
new file mode 100644
index 00000000000..965de48b1df
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSBooleanValueStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSBooleanValueStyle extends CSSNamedStyle{
+
+ public boolean isCSSBooleanValue();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSByteArrayValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSByteArrayValueStyle.java
new file mode 100644
index 00000000000..a81e4fa2b82
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSByteArrayValueStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSByteArrayValueStyle extends CSSNamedStyle{
+
+ public byte[] getCSSByteArrayValue();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSCanonicalStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSCanonicalStyle.java
new file mode 100644
index 00000000000..b1ee98c8e62
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSCanonicalStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSCanonicalStyle {
+
+ public boolean isCSSCanonical();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSConnectorStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSConnectorStyle.java
new file mode 100644
index 00000000000..9f50152b2c2
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSConnectorStyle.java
@@ -0,0 +1,18 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSConnectorStyle extends CSSRoundedCornersStyle, CSSRoutingStyle, CSSLineStyle{
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDataTypeStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDataTypeStyle.java
new file mode 100644
index 00000000000..2868401218a
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDataTypeStyle.java
@@ -0,0 +1,18 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSDataTypeStyle extends CSSNamedStyle{
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDescriptionStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDescriptionStyle.java
new file mode 100644
index 00000000000..88e5cfb06d8
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDescriptionStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSDescriptionStyle {
+
+ public java.lang.String getCSSDescription();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDiagramLinkStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDiagramLinkStyle.java
new file mode 100644
index 00000000000..0db0b204e8c
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDiagramLinkStyle.java
@@ -0,0 +1,18 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSDiagramLinkStyle {
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDiagramStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDiagramStyle.java
new file mode 100644
index 00000000000..f170fac480a
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDiagramStyle.java
@@ -0,0 +1,18 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSDiagramStyle extends CSSPageStyle, CSSGuideStyle, CSSDescriptionStyle{
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDoubleListValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDoubleListValueStyle.java
new file mode 100644
index 00000000000..0e1e9798ce4
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDoubleListValueStyle.java
@@ -0,0 +1,20 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+import org.eclipse.emf.common.util.EList;
+
+public interface CSSDoubleListValueStyle extends CSSNamedStyle{
+
+ public EList getCSSDoubleListValue();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDoubleValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDoubleValueStyle.java
new file mode 100644
index 00000000000..937d3e87eb6
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDoubleValueStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSDoubleValueStyle extends CSSNamedStyle{
+
+ public double getCSSDoubleValue();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDrawerStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDrawerStyle.java
new file mode 100644
index 00000000000..1ec950900f5
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSDrawerStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSDrawerStyle {
+
+ public boolean isCSSCollapsed();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSEObjectListValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSEObjectListValueStyle.java
new file mode 100644
index 00000000000..8c46df5d84b
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSEObjectListValueStyle.java
@@ -0,0 +1,18 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSEObjectListValueStyle extends CSSNamedStyle{
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSEObjectValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSEObjectValueStyle.java
new file mode 100644
index 00000000000..f028e22ca86
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSEObjectValueStyle.java
@@ -0,0 +1,18 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSEObjectValueStyle extends CSSNamedStyle{
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSFillStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSFillStyle.java
new file mode 100644
index 00000000000..fd6a89219b0
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSFillStyle.java
@@ -0,0 +1,25 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSFillStyle {
+
+ public int getCSSFillColor();
+
+
+ public int getCSSTransparency();
+
+
+ public org.eclipse.gmf.runtime.notation.datatype.GradientData getCSSGradient();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSFilteringStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSFilteringStyle.java
new file mode 100644
index 00000000000..2de3c9f3b32
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSFilteringStyle.java
@@ -0,0 +1,23 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+import org.eclipse.gmf.runtime.notation.Filtering;
+
+public interface CSSFilteringStyle {
+
+ public Filtering getCSSFiltering();
+
+
+ public java.util.List getCSSFilteringKeys();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSFontStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSFontStyle.java
new file mode 100644
index 00000000000..027d267e8b6
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSFontStyle.java
@@ -0,0 +1,37 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSFontStyle {
+
+ public int getCSSFontColor();
+
+
+ public java.lang.String getCSSFontName();
+
+
+ public int getCSSFontHeight();
+
+
+ public boolean isCSSBold();
+
+
+ public boolean isCSSItalic();
+
+
+ public boolean isCSSUnderline();
+
+
+ public boolean isCSSStrikeThrough();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSGuideStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSGuideStyle.java
new file mode 100644
index 00000000000..32181eb4f1e
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSGuideStyle.java
@@ -0,0 +1,18 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSGuideStyle {
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSHintedDiagramLinkStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSHintedDiagramLinkStyle.java
new file mode 100644
index 00000000000..ecb8ec897fb
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSHintedDiagramLinkStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSHintedDiagramLinkStyle extends CSSDiagramLinkStyle{
+
+ public java.lang.String getCSSHint();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSImageBufferStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSImageBufferStyle.java
new file mode 100644
index 00000000000..5c3a842084a
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSImageBufferStyle.java
@@ -0,0 +1,18 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSImageBufferStyle extends CSSImageStyle{
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSImageStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSImageStyle.java
new file mode 100644
index 00000000000..b8beaa6496b
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSImageStyle.java
@@ -0,0 +1,22 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSImageStyle {
+
+ public java.lang.Boolean getCSSAntiAlias();
+
+
+ public java.lang.Boolean getCSSMaintainAspectRatio();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSIntListValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSIntListValueStyle.java
new file mode 100644
index 00000000000..aa7f438274f
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSIntListValueStyle.java
@@ -0,0 +1,20 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+import org.eclipse.emf.common.util.EList;
+
+public interface CSSIntListValueStyle extends CSSNamedStyle{
+
+ public EList getCSSIntListValue();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSIntValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSIntValueStyle.java
new file mode 100644
index 00000000000..0e0d791f82a
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSIntValueStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSIntValueStyle extends CSSNamedStyle{
+
+ public int getCSSIntValue();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSLineStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSLineStyle.java
new file mode 100644
index 00000000000..270f27ca46b
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSLineStyle.java
@@ -0,0 +1,22 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSLineStyle {
+
+ public int getCSSLineColor();
+
+
+ public int getCSSLineWidth();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSLineTypeStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSLineTypeStyle.java
new file mode 100644
index 00000000000..0184f72e80e
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSLineTypeStyle.java
@@ -0,0 +1,20 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+import org.eclipse.gmf.runtime.notation.LineType;
+
+public interface CSSLineTypeStyle {
+
+ public LineType getCSSLineType();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSListValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSListValueStyle.java
new file mode 100644
index 00000000000..a71ecc65890
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSListValueStyle.java
@@ -0,0 +1,20 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+import org.eclipse.emf.common.util.EList;
+
+public interface CSSListValueStyle extends CSSNamedStyle, CSSDataTypeStyle{
+
+ public EList getCSSRawValuesList();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSMultiDiagramLinkStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSMultiDiagramLinkStyle.java
new file mode 100644
index 00000000000..964bb81e747
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSMultiDiagramLinkStyle.java
@@ -0,0 +1,18 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSMultiDiagramLinkStyle {
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSNamedStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSNamedStyle.java
new file mode 100644
index 00000000000..e3a61075cf3
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSNamedStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSNamedStyle {
+
+ public java.lang.String getCSSName();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSPageStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSPageStyle.java
new file mode 100644
index 00000000000..ee993dca5ef
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSPageStyle.java
@@ -0,0 +1,28 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSPageStyle {
+
+ public int getCSSPageX();
+
+
+ public int getCSSPageY();
+
+
+ public int getCSSPageWidth();
+
+
+ public int getCSSPageHeight();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSPropertiesSetStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSPropertiesSetStyle.java
new file mode 100644
index 00000000000..10e7c9eec5a
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSPropertiesSetStyle.java
@@ -0,0 +1,18 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSPropertiesSetStyle extends CSSNamedStyle{
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSRoundedCornersStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSRoundedCornersStyle.java
new file mode 100644
index 00000000000..2f08a0fefb0
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSRoundedCornersStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSRoundedCornersStyle {
+
+ public int getCSSRoundedBendpointsRadius();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSRoutingStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSRoutingStyle.java
new file mode 100644
index 00000000000..9d4d5508f72
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSRoutingStyle.java
@@ -0,0 +1,41 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+import org.eclipse.gmf.runtime.notation.JumpLinkStatus;
+import org.eclipse.gmf.runtime.notation.JumpLinkType;
+import org.eclipse.gmf.runtime.notation.Routing;
+import org.eclipse.gmf.runtime.notation.Smoothness;
+
+public interface CSSRoutingStyle extends CSSRoundedCornersStyle{
+
+ public Routing getCSSRouting();
+
+
+ public Smoothness getCSSSmoothness();
+
+
+ public boolean isCSSAvoidObstructions();
+
+
+ public boolean isCSSClosestDistance();
+
+
+ public JumpLinkStatus getCSSJumpLinkStatus();
+
+
+ public JumpLinkType getCSSJumpLinkType();
+
+
+ public boolean isCSSJumpLinksReverse();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSShapeStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSShapeStyle.java
new file mode 100644
index 00000000000..930e30b4ab7
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSShapeStyle.java
@@ -0,0 +1,18 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSShapeStyle extends CSSFontStyle, CSSDescriptionStyle, CSSFillStyle, CSSLineStyle, CSSRoundedCornersStyle{
+
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSSingleValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSSingleValueStyle.java
new file mode 100644
index 00000000000..b666af0888e
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSSingleValueStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSSingleValueStyle extends CSSNamedStyle, CSSDataTypeStyle{
+
+ public java.lang.String getCSSRawValue();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSSortingStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSSortingStyle.java
new file mode 100644
index 00000000000..f0ef31f175f
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSSortingStyle.java
@@ -0,0 +1,23 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+import org.eclipse.gmf.runtime.notation.Sorting;
+
+public interface CSSSortingStyle {
+
+ public Sorting getCSSSorting();
+
+
+ public java.util.Map getCSSSortingKeys();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSStringListValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSStringListValueStyle.java
new file mode 100644
index 00000000000..d649eb1b8fb
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSStringListValueStyle.java
@@ -0,0 +1,20 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+import org.eclipse.emf.common.util.EList;
+
+public interface CSSStringListValueStyle extends CSSNamedStyle{
+
+ public EList getCSSStringListValue();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSStringValueStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSStringValueStyle.java
new file mode 100644
index 00000000000..1119a976c56
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSStringValueStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSStringValueStyle extends CSSNamedStyle{
+
+ public java.lang.String getCSSStringValue();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSTextStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSTextStyle.java
new file mode 100644
index 00000000000..9be4935f83b
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSTextStyle.java
@@ -0,0 +1,20 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+import org.eclipse.gmf.runtime.notation.TextAlignment;
+
+public interface CSSTextStyle {
+
+ public TextAlignment getCSSTextAlignment();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSTitleStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSTitleStyle.java
new file mode 100644
index 00000000000..ca35bb83871
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/CSSTitleStyle.java
@@ -0,0 +1,19 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style;
+
+
+public interface CSSTitleStyle {
+
+ public boolean isCSSShowTitle();
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSArrowStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSArrowStyleDelegate.java
new file mode 100644
index 00000000000..a4fe9510bde
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSArrowStyleDelegate.java
@@ -0,0 +1,58 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.ArrowStyle;
+import org.eclipse.gmf.runtime.notation.ArrowType;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSArrowStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSArrowStyleDelegate implements CSSArrowStyle {
+
+ private ArrowStyle arrowStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSArrowStyleDelegate(ArrowStyle arrowStyle, ExtendedCSSEngine engine) {
+ this.arrowStyle = arrowStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.arrowStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public ArrowType getCSSArrowSource() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "arrowSource");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getArrowStyle_ArrowSource().getDefaultValue();
+ return (ArrowType)defaultValue;
+ }
+ return ArrowType.get(cssValue.getCssText());
+ }
+
+ public ArrowType getCSSArrowTarget() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "arrowTarget");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getArrowStyle_ArrowTarget().getDefaultValue();
+ return (ArrowType)defaultValue;
+ }
+ return ArrowType.get(cssValue.getCssText());
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSBooleanListValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSBooleanListValueStyleDelegate.java
new file mode 100644
index 00000000000..7f84db4066d
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSBooleanListValueStyleDelegate.java
@@ -0,0 +1,58 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.gmf.runtime.notation.BooleanListValueStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSBooleanListValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSBooleanListValueStyleDelegate implements CSSBooleanListValueStyle {
+
+ private BooleanListValueStyle booleanListValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSBooleanListValueStyleDelegate(BooleanListValueStyle booleanListValueStyle, ExtendedCSSEngine engine) {
+ this.booleanListValueStyle = booleanListValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.booleanListValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public EList getCSSBooleanListValue() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "booleanListValue");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getBooleanListValueStyle_BooleanListValue().getDefaultValue();
+ return (EList)defaultValue;
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSBooleanValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSBooleanValueStyleDelegate.java
new file mode 100644
index 00000000000..f323975caba
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSBooleanValueStyleDelegate.java
@@ -0,0 +1,57 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.BooleanValueStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSBooleanValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSBooleanValueStyleDelegate implements CSSBooleanValueStyle{
+
+ private BooleanValueStyle booleanValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSBooleanValueStyleDelegate(BooleanValueStyle booleanValueStyle, ExtendedCSSEngine engine){
+ this.booleanValueStyle = booleanValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.booleanValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public boolean isCSSBooleanValue(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "booleanValue");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getBooleanValueStyle_BooleanValue().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSByteArrayValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSByteArrayValueStyleDelegate.java
new file mode 100644
index 00000000000..edb215c4459
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSByteArrayValueStyleDelegate.java
@@ -0,0 +1,57 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.ByteArrayValueStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSByteArrayValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSByteArrayValueStyleDelegate implements CSSByteArrayValueStyle{
+
+ private ByteArrayValueStyle byteArrayValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSByteArrayValueStyleDelegate(ByteArrayValueStyle byteArrayValueStyle, ExtendedCSSEngine engine){
+ this.byteArrayValueStyle = byteArrayValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.byteArrayValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public byte[] getCSSByteArrayValue(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "byteArrayValue");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getByteArrayValueStyle_ByteArrayValue().getDefaultValue();
+ return (byte[])defaultValue;
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSCanonicalStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSCanonicalStyleDelegate.java
new file mode 100644
index 00000000000..dba8f6e3141
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSCanonicalStyleDelegate.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.CanonicalStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSCanonicalStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSCanonicalStyleDelegate implements CSSCanonicalStyle{
+
+ private CanonicalStyle canonicalStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSCanonicalStyleDelegate(CanonicalStyle canonicalStyle, ExtendedCSSEngine engine){
+ this.canonicalStyle = canonicalStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.canonicalStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public boolean isCSSCanonical(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "canonical");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getCanonicalStyle_Canonical().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSConnectorStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSConnectorStyleDelegate.java
new file mode 100644
index 00000000000..4e8cafdfc4d
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSConnectorStyleDelegate.java
@@ -0,0 +1,133 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.ConnectorStyle;
+import org.eclipse.gmf.runtime.notation.JumpLinkStatus;
+import org.eclipse.gmf.runtime.notation.JumpLinkType;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.Routing;
+import org.eclipse.gmf.runtime.notation.Smoothness;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSConnectorStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSConnectorStyleDelegate implements CSSConnectorStyle{
+
+ private ConnectorStyle connectorStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSConnectorStyleDelegate(ConnectorStyle connectorStyle, ExtendedCSSEngine engine){
+ this.connectorStyle = connectorStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.connectorStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public int getCSSRoundedBendpointsRadius(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "roundedBendpointsRadius");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public Routing getCSSRouting(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "routing");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_Routing().getDefaultValue();
+ return (Routing)defaultValue;
+ }
+ return Routing.get(cssValue.getCssText());
+ }
+
+ public Smoothness getCSSSmoothness(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "smoothness");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_Smoothness().getDefaultValue();
+ return (Smoothness)defaultValue;
+ }
+ return Smoothness.get(cssValue.getCssText());
+ }
+
+ public boolean isCSSAvoidObstructions(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "avoidObstructions");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_AvoidObstructions().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public boolean isCSSClosestDistance(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "closestDistance");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_ClosestDistance().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public JumpLinkStatus getCSSJumpLinkStatus(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "jumpLinkStatus");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkStatus().getDefaultValue();
+ return (JumpLinkStatus)defaultValue;
+ }
+ return JumpLinkStatus.get(cssValue.getCssText());
+ }
+
+ public JumpLinkType getCSSJumpLinkType(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "jumpLinkType");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkType().getDefaultValue();
+ return (JumpLinkType)defaultValue;
+ }
+ return JumpLinkType.get(cssValue.getCssText());
+ }
+
+ public boolean isCSSJumpLinksReverse(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "jumpLinksReverse");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinksReverse().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public int getCSSLineColor(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "lineColor");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getLineStyle_LineColor().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, "GMFColor", null);
+ }
+
+ public int getCSSLineWidth(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "lineWidth");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getLineStyle_LineWidth().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDataTypeStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDataTypeStyleDelegate.java
new file mode 100644
index 00000000000..0ed7270384f
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDataTypeStyleDelegate.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.DataTypeStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDataTypeStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSDataTypeStyleDelegate implements CSSDataTypeStyle{
+
+ private DataTypeStyle dataTypeStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSDataTypeStyleDelegate(DataTypeStyle dataTypeStyle, ExtendedCSSEngine engine){
+ this.dataTypeStyle = dataTypeStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.dataTypeStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDescriptionStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDescriptionStyleDelegate.java
new file mode 100644
index 00000000000..6ad9135da21
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDescriptionStyleDelegate.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.DescriptionStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDescriptionStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSDescriptionStyleDelegate implements CSSDescriptionStyle{
+
+ private DescriptionStyle descriptionStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSDescriptionStyleDelegate(DescriptionStyle descriptionStyle, ExtendedCSSEngine engine){
+ this.descriptionStyle = descriptionStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.descriptionStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSDescription(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "description");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getDescriptionStyle_Description().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDiagramLinkStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDiagramLinkStyleDelegate.java
new file mode 100644
index 00000000000..fdddd9d5d2f
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDiagramLinkStyleDelegate.java
@@ -0,0 +1,38 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.DiagramLinkStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDiagramLinkStyle;
+import org.w3c.dom.Element;
+
+@SuppressWarnings("restriction")
+public class CSSDiagramLinkStyleDelegate implements CSSDiagramLinkStyle{
+
+ private DiagramLinkStyle diagramLinkStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSDiagramLinkStyleDelegate(DiagramLinkStyle diagramLinkStyle, ExtendedCSSEngine engine){
+ this.diagramLinkStyle = diagramLinkStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.diagramLinkStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDiagramStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDiagramStyleDelegate.java
new file mode 100644
index 00000000000..16970294255
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDiagramStyleDelegate.java
@@ -0,0 +1,84 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.DiagramStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDiagramStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSDiagramStyleDelegate implements CSSDiagramStyle {
+
+ private DiagramStyle diagramStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSDiagramStyleDelegate(DiagramStyle diagramStyle, ExtendedCSSEngine engine) {
+ this.diagramStyle = diagramStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.diagramStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public int getCSSPageX() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "pageX");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getPageStyle_PageX().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public int getCSSPageY() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "pageY");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getPageStyle_PageY().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public int getCSSPageWidth() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "pageWidth");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getPageStyle_PageWidth().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public int getCSSPageHeight() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "pageHeight");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getPageStyle_PageHeight().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public java.lang.String getCSSDescription() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "description");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getDescriptionStyle_Description().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDoubleListValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDoubleListValueStyleDelegate.java
new file mode 100644
index 00000000000..d8f0473e435
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDoubleListValueStyleDelegate.java
@@ -0,0 +1,58 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.gmf.runtime.notation.DoubleListValueStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDoubleListValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSDoubleListValueStyleDelegate implements CSSDoubleListValueStyle{
+
+ private DoubleListValueStyle doubleListValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSDoubleListValueStyleDelegate(DoubleListValueStyle doubleListValueStyle, ExtendedCSSEngine engine){
+ this.doubleListValueStyle = doubleListValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.doubleListValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public EList getCSSDoubleListValue(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "doubleListValue");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getDoubleListValueStyle_DoubleListValue().getDefaultValue();
+ return (EList)defaultValue;
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDoubleValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDoubleValueStyleDelegate.java
new file mode 100644
index 00000000000..3f230a0ede5
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDoubleValueStyleDelegate.java
@@ -0,0 +1,57 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.DoubleValueStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDoubleValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSDoubleValueStyleDelegate implements CSSDoubleValueStyle{
+
+ private DoubleValueStyle doubleValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSDoubleValueStyleDelegate(DoubleValueStyle doubleValueStyle, ExtendedCSSEngine engine){
+ this.doubleValueStyle = doubleValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.doubleValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public double getCSSDoubleValue(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "doubleValue");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getDoubleValueStyle_DoubleValue().getDefaultValue();
+ return (Double)defaultValue;
+ }
+ return (Double)engine.convert(cssValue, Double.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDrawerStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDrawerStyleDelegate.java
new file mode 100644
index 00000000000..6c42d6c2836
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSDrawerStyleDelegate.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.DrawerStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSDrawerStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSDrawerStyleDelegate implements CSSDrawerStyle{
+
+ private DrawerStyle drawerStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSDrawerStyleDelegate(DrawerStyle drawerStyle, ExtendedCSSEngine engine){
+ this.drawerStyle = drawerStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.drawerStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public boolean isCSSCollapsed(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "collapsed");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getDrawerStyle_Collapsed().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSEObjectListValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSEObjectListValueStyleDelegate.java
new file mode 100644
index 00000000000..7d758207683
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSEObjectListValueStyleDelegate.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.EObjectListValueStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSEObjectListValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSEObjectListValueStyleDelegate implements CSSEObjectListValueStyle{
+
+ private EObjectListValueStyle eObjectListValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSEObjectListValueStyleDelegate(EObjectListValueStyle eObjectListValueStyle, ExtendedCSSEngine engine){
+ this.eObjectListValueStyle = eObjectListValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.eObjectListValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSEObjectValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSEObjectValueStyleDelegate.java
new file mode 100644
index 00000000000..4666f4cdbcc
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSEObjectValueStyleDelegate.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.EObjectValueStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSEObjectValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSEObjectValueStyleDelegate implements CSSEObjectValueStyle{
+
+ private EObjectValueStyle eObjectValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSEObjectValueStyleDelegate(EObjectValueStyle eObjectValueStyle, ExtendedCSSEngine engine){
+ this.eObjectValueStyle = eObjectValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.eObjectValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSFillStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSFillStyleDelegate.java
new file mode 100644
index 00000000000..38727f1b2c1
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSFillStyleDelegate.java
@@ -0,0 +1,62 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.FillStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.helper.GradientHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSFillStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSFillStyleDelegate implements CSSFillStyle {
+
+ private FillStyle fillStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSFillStyleDelegate(FillStyle fillStyle, ExtendedCSSEngine engine) {
+ this.fillStyle = fillStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.fillStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public int getCSSFillColor() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "fillColor");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFillStyle_FillColor().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, "GMFColor", null);
+ }
+
+ public int getCSSTransparency() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "transparency");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFillStyle_Transparency().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public org.eclipse.gmf.runtime.notation.datatype.GradientData getCSSGradient() {
+ return GradientHelper.computeGradient(engine, element);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSFilteringStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSFilteringStyleDelegate.java
new file mode 100644
index 00000000000..c6a380b34a7
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSFilteringStyleDelegate.java
@@ -0,0 +1,58 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.Filtering;
+import org.eclipse.gmf.runtime.notation.FilteringStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSFilteringStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSFilteringStyleDelegate implements CSSFilteringStyle{
+
+ private FilteringStyle filteringStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSFilteringStyleDelegate(FilteringStyle filteringStyle, ExtendedCSSEngine engine){
+ this.filteringStyle = filteringStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.filteringStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public Filtering getCSSFiltering(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "filtering");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFilteringStyle_Filtering().getDefaultValue();
+ return (Filtering)defaultValue;
+ }
+ return Filtering.get(cssValue.getCssText());
+ }
+
+ public java.util.List getCSSFilteringKeys(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "filteringKeys");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFilteringStyle_FilteringKeys().getDefaultValue();
+ return (java.util.List)defaultValue;
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSFontStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSFontStyleDelegate.java
new file mode 100644
index 00000000000..c45c92033e0
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSFontStyleDelegate.java
@@ -0,0 +1,102 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.FontStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSFontStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSFontStyleDelegate implements CSSFontStyle{
+
+ private FontStyle fontStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSFontStyleDelegate(FontStyle fontStyle, ExtendedCSSEngine engine){
+ this.fontStyle = fontStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.fontStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public int getCSSFontColor(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "fontColor");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_FontColor().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, "GMFColor", null);
+ }
+
+ public java.lang.String getCSSFontName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "fontName");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_FontName().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public int getCSSFontHeight(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "fontHeight");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_FontHeight().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public boolean isCSSBold(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "bold");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_Bold().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public boolean isCSSItalic(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "italic");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_Italic().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public boolean isCSSUnderline(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "underline");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_Underline().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public boolean isCSSStrikeThrough(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "strikeThrough");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_StrikeThrough().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSGuideStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSGuideStyleDelegate.java
new file mode 100644
index 00000000000..f70d0873d23
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSGuideStyleDelegate.java
@@ -0,0 +1,38 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.GuideStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSGuideStyle;
+import org.w3c.dom.Element;
+
+@SuppressWarnings("restriction")
+public class CSSGuideStyleDelegate implements CSSGuideStyle{
+
+ private GuideStyle guideStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSGuideStyleDelegate(GuideStyle guideStyle, ExtendedCSSEngine engine){
+ this.guideStyle = guideStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.guideStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSHintedDiagramLinkStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSHintedDiagramLinkStyleDelegate.java
new file mode 100644
index 00000000000..52de86cd115
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSHintedDiagramLinkStyleDelegate.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.HintedDiagramLinkStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSHintedDiagramLinkStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSHintedDiagramLinkStyleDelegate implements CSSHintedDiagramLinkStyle{
+
+ private HintedDiagramLinkStyle hintedDiagramLinkStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSHintedDiagramLinkStyleDelegate(HintedDiagramLinkStyle hintedDiagramLinkStyle, ExtendedCSSEngine engine){
+ this.hintedDiagramLinkStyle = hintedDiagramLinkStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.hintedDiagramLinkStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSHint(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "hint");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getHintedDiagramLinkStyle_Hint().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSImageBufferStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSImageBufferStyleDelegate.java
new file mode 100644
index 00000000000..bde23eb4f41
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSImageBufferStyleDelegate.java
@@ -0,0 +1,57 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.ImageBufferStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSImageBufferStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSImageBufferStyleDelegate implements CSSImageBufferStyle{
+
+ private ImageBufferStyle imageBufferStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSImageBufferStyleDelegate(ImageBufferStyle imageBufferStyle, ExtendedCSSEngine engine){
+ this.imageBufferStyle = imageBufferStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.imageBufferStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.Boolean getCSSAntiAlias(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "antiAlias");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getImageStyle_AntiAlias().getDefaultValue();
+ return (java.lang.Boolean)defaultValue;
+ }
+ return null;
+ }
+
+ public java.lang.Boolean getCSSMaintainAspectRatio(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "maintainAspectRatio");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getImageStyle_MaintainAspectRatio().getDefaultValue();
+ return (java.lang.Boolean)defaultValue;
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSImageStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSImageStyleDelegate.java
new file mode 100644
index 00000000000..521a278719f
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSImageStyleDelegate.java
@@ -0,0 +1,57 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.ImageStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSImageStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSImageStyleDelegate implements CSSImageStyle{
+
+ private ImageStyle imageStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSImageStyleDelegate(ImageStyle imageStyle, ExtendedCSSEngine engine){
+ this.imageStyle = imageStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.imageStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.Boolean getCSSAntiAlias(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "antiAlias");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getImageStyle_AntiAlias().getDefaultValue();
+ return (java.lang.Boolean)defaultValue;
+ }
+ return null;
+ }
+
+ public java.lang.Boolean getCSSMaintainAspectRatio(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "maintainAspectRatio");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getImageStyle_MaintainAspectRatio().getDefaultValue();
+ return (java.lang.Boolean)defaultValue;
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSIntListValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSIntListValueStyleDelegate.java
new file mode 100644
index 00000000000..9e29d557416
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSIntListValueStyleDelegate.java
@@ -0,0 +1,58 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.gmf.runtime.notation.IntListValueStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSIntListValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSIntListValueStyleDelegate implements CSSIntListValueStyle{
+
+ private IntListValueStyle intListValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSIntListValueStyleDelegate(IntListValueStyle intListValueStyle, ExtendedCSSEngine engine){
+ this.intListValueStyle = intListValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.intListValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public EList getCSSIntListValue(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "intListValue");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getIntListValueStyle_IntListValue().getDefaultValue();
+ return (EList)defaultValue;
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSIntValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSIntValueStyleDelegate.java
new file mode 100644
index 00000000000..3ff680bd9b8
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSIntValueStyleDelegate.java
@@ -0,0 +1,57 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.IntValueStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSIntValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSIntValueStyleDelegate implements CSSIntValueStyle{
+
+ private IntValueStyle intValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSIntValueStyleDelegate(IntValueStyle intValueStyle, ExtendedCSSEngine engine){
+ this.intValueStyle = intValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.intValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public int getCSSIntValue(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "intValue");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getIntValueStyle_IntValue().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSLineStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSLineStyleDelegate.java
new file mode 100644
index 00000000000..694f1f16bba
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSLineStyleDelegate.java
@@ -0,0 +1,57 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.LineStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSLineStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSLineStyleDelegate implements CSSLineStyle{
+
+ private LineStyle lineStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSLineStyleDelegate(LineStyle lineStyle, ExtendedCSSEngine engine){
+ this.lineStyle = lineStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.lineStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public int getCSSLineColor(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "lineColor");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getLineStyle_LineColor().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, "GMFColor", null);
+ }
+
+ public int getCSSLineWidth(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "lineWidth");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getLineStyle_LineWidth().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSLineTypeStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSLineTypeStyleDelegate.java
new file mode 100644
index 00000000000..8e2383f8e22
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSLineTypeStyleDelegate.java
@@ -0,0 +1,49 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.LineType;
+import org.eclipse.gmf.runtime.notation.LineTypeStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSLineTypeStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSLineTypeStyleDelegate implements CSSLineTypeStyle{
+
+ private LineTypeStyle lineTypeStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSLineTypeStyleDelegate(LineTypeStyle lineTypeStyle, ExtendedCSSEngine engine){
+ this.lineTypeStyle = lineTypeStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.lineTypeStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public LineType getCSSLineType(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "lineType");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getLineTypeStyle_LineType().getDefaultValue();
+ return (LineType)defaultValue;
+ }
+ return LineType.get(cssValue.getCssText());
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSListValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSListValueStyleDelegate.java
new file mode 100644
index 00000000000..db42e0f0e5c
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSListValueStyleDelegate.java
@@ -0,0 +1,58 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.gmf.runtime.notation.ListValueStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSListValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSListValueStyleDelegate implements CSSListValueStyle{
+
+ private ListValueStyle listValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSListValueStyleDelegate(ListValueStyle listValueStyle, ExtendedCSSEngine engine){
+ this.listValueStyle = listValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.listValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public EList getCSSRawValuesList(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "rawValuesList");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getListValueStyle_RawValuesList().getDefaultValue();
+ return (EList)defaultValue;
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSMultiDiagramLinkStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSMultiDiagramLinkStyleDelegate.java
new file mode 100644
index 00000000000..df975267222
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSMultiDiagramLinkStyleDelegate.java
@@ -0,0 +1,38 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.MultiDiagramLinkStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSMultiDiagramLinkStyle;
+import org.w3c.dom.Element;
+
+@SuppressWarnings("restriction")
+public class CSSMultiDiagramLinkStyleDelegate implements CSSMultiDiagramLinkStyle{
+
+ private MultiDiagramLinkStyle multiDiagramLinkStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSMultiDiagramLinkStyleDelegate(MultiDiagramLinkStyle multiDiagramLinkStyle, ExtendedCSSEngine engine){
+ this.multiDiagramLinkStyle = multiDiagramLinkStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.multiDiagramLinkStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSNamedStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSNamedStyleDelegate.java
new file mode 100644
index 00000000000..d0cec28f962
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSNamedStyleDelegate.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.NamedStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSNamedStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSNamedStyleDelegate implements CSSNamedStyle{
+
+ private NamedStyle namedStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSNamedStyleDelegate(NamedStyle namedStyle, ExtendedCSSEngine engine){
+ this.namedStyle = namedStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.namedStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSPageStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSPageStyleDelegate.java
new file mode 100644
index 00000000000..41d0cb5e06f
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSPageStyleDelegate.java
@@ -0,0 +1,75 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.PageStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSPageStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSPageStyleDelegate implements CSSPageStyle{
+
+ private PageStyle pageStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSPageStyleDelegate(PageStyle pageStyle, ExtendedCSSEngine engine){
+ this.pageStyle = pageStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.pageStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public int getCSSPageX(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "pageX");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getPageStyle_PageX().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public int getCSSPageY(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "pageY");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getPageStyle_PageY().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public int getCSSPageWidth(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "pageWidth");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getPageStyle_PageWidth().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public int getCSSPageHeight(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "pageHeight");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getPageStyle_PageHeight().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSPropertiesSetStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSPropertiesSetStyleDelegate.java
new file mode 100644
index 00000000000..07dc87b409c
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSPropertiesSetStyleDelegate.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.PropertiesSetStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSPropertiesSetStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSPropertiesSetStyleDelegate implements CSSPropertiesSetStyle{
+
+ private PropertiesSetStyle propertiesSetStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSPropertiesSetStyleDelegate(PropertiesSetStyle propertiesSetStyle, ExtendedCSSEngine engine){
+ this.propertiesSetStyle = propertiesSetStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.propertiesSetStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSRoundedCornersStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSRoundedCornersStyleDelegate.java
new file mode 100644
index 00000000000..77ad6d2cc2e
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSRoundedCornersStyleDelegate.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.RoundedCornersStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSRoundedCornersStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSRoundedCornersStyleDelegate implements CSSRoundedCornersStyle{
+
+ private RoundedCornersStyle roundedCornersStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSRoundedCornersStyleDelegate(RoundedCornersStyle roundedCornersStyle, ExtendedCSSEngine engine){
+ this.roundedCornersStyle = roundedCornersStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.roundedCornersStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public int getCSSRoundedBendpointsRadius(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "roundedBendpointsRadius");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSRoutingStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSRoutingStyleDelegate.java
new file mode 100644
index 00000000000..42bbd4dfd4a
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSRoutingStyleDelegate.java
@@ -0,0 +1,115 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.JumpLinkStatus;
+import org.eclipse.gmf.runtime.notation.JumpLinkType;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.Routing;
+import org.eclipse.gmf.runtime.notation.RoutingStyle;
+import org.eclipse.gmf.runtime.notation.Smoothness;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSRoutingStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSRoutingStyleDelegate implements CSSRoutingStyle{
+
+ private RoutingStyle routingStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSRoutingStyleDelegate(RoutingStyle routingStyle, ExtendedCSSEngine engine){
+ this.routingStyle = routingStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.routingStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public int getCSSRoundedBendpointsRadius(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "roundedBendpointsRadius");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public Routing getCSSRouting(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "routing");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_Routing().getDefaultValue();
+ return (Routing)defaultValue;
+ }
+ return Routing.get(cssValue.getCssText());
+ }
+
+ public Smoothness getCSSSmoothness(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "smoothness");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_Smoothness().getDefaultValue();
+ return (Smoothness)defaultValue;
+ }
+ return Smoothness.get(cssValue.getCssText());
+ }
+
+ public boolean isCSSAvoidObstructions(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "avoidObstructions");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_AvoidObstructions().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public boolean isCSSClosestDistance(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "closestDistance");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_ClosestDistance().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public JumpLinkStatus getCSSJumpLinkStatus(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "jumpLinkStatus");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkStatus().getDefaultValue();
+ return (JumpLinkStatus)defaultValue;
+ }
+ return JumpLinkStatus.get(cssValue.getCssText());
+ }
+
+ public JumpLinkType getCSSJumpLinkType(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "jumpLinkType");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinkType().getDefaultValue();
+ return (JumpLinkType)defaultValue;
+ }
+ return JumpLinkType.get(cssValue.getCssText());
+ }
+
+ public boolean isCSSJumpLinksReverse(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "jumpLinksReverse");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoutingStyle_JumpLinksReverse().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSShapeStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSShapeStyleDelegate.java
new file mode 100644
index 00000000000..718c0a4202c
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSShapeStyleDelegate.java
@@ -0,0 +1,161 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.ShapeStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.helper.GradientHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSShapeStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSShapeStyleDelegate implements CSSShapeStyle {
+
+ private ShapeStyle shapeStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSShapeStyleDelegate(ShapeStyle shapeStyle, ExtendedCSSEngine engine) {
+ this.shapeStyle = shapeStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.shapeStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public int getCSSFontColor() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "fontColor");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_FontColor().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, "GMFColor", null);
+ }
+
+ public java.lang.String getCSSFontName() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "fontName");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_FontName().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public int getCSSFontHeight() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "fontHeight");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_FontHeight().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public boolean isCSSBold() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "bold");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_Bold().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public boolean isCSSItalic() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "italic");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_Italic().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public boolean isCSSUnderline() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "underline");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_Underline().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public boolean isCSSStrikeThrough() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "strikeThrough");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFontStyle_StrikeThrough().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public java.lang.String getCSSDescription() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "description");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getDescriptionStyle_Description().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public int getCSSFillColor() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "fillColor");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFillStyle_FillColor().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, "GMFColor", null);
+ }
+
+ public int getCSSTransparency() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "transparency");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getFillStyle_Transparency().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public org.eclipse.gmf.runtime.notation.datatype.GradientData getCSSGradient() {
+ return GradientHelper.computeGradient(engine, element);
+ }
+
+ public int getCSSLineColor() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "lineColor");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getLineStyle_LineColor().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, "GMFColor", null);
+ }
+
+ public int getCSSLineWidth() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "lineWidth");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getLineStyle_LineWidth().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+
+ public int getCSSRoundedBendpointsRadius() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "roundedBendpointsRadius");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getRoundedCornersStyle_RoundedBendpointsRadius().getDefaultValue();
+ return (Integer)defaultValue;
+ }
+ return (Integer)engine.convert(cssValue, Integer.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSSingleValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSSingleValueStyleDelegate.java
new file mode 100644
index 00000000000..6c0f78fae5f
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSSingleValueStyleDelegate.java
@@ -0,0 +1,57 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.SingleValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSSingleValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSSingleValueStyleDelegate implements CSSSingleValueStyle{
+
+ private SingleValueStyle singleValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSSingleValueStyleDelegate(SingleValueStyle singleValueStyle, ExtendedCSSEngine engine){
+ this.singleValueStyle = singleValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.singleValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public java.lang.String getCSSRawValue(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "rawValue");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getSingleValueStyle_RawValue().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSSortingStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSSortingStyleDelegate.java
new file mode 100644
index 00000000000..6ec38674787
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSSortingStyleDelegate.java
@@ -0,0 +1,58 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.Sorting;
+import org.eclipse.gmf.runtime.notation.SortingStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSSortingStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSSortingStyleDelegate implements CSSSortingStyle{
+
+ private SortingStyle sortingStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSSortingStyleDelegate(SortingStyle sortingStyle, ExtendedCSSEngine engine){
+ this.sortingStyle = sortingStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.sortingStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public Sorting getCSSSorting(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "sorting");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getSortingStyle_Sorting().getDefaultValue();
+ return (Sorting)defaultValue;
+ }
+ return Sorting.get(cssValue.getCssText());
+ }
+
+ public java.util.Map getCSSSortingKeys(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "sortingKeys");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getSortingStyle_SortingKeys().getDefaultValue();
+ return (java.util.Map)defaultValue;
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSStringListValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSStringListValueStyleDelegate.java
new file mode 100644
index 00000000000..26ef117eaca
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSStringListValueStyleDelegate.java
@@ -0,0 +1,58 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.StringListValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSStringListValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSStringListValueStyleDelegate implements CSSStringListValueStyle{
+
+ private StringListValueStyle stringListValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSStringListValueStyleDelegate(StringListValueStyle stringListValueStyle, ExtendedCSSEngine engine){
+ this.stringListValueStyle = stringListValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.stringListValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public EList getCSSStringListValue(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "stringListValue");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getStringListValueStyle_StringListValue().getDefaultValue();
+ return (EList)defaultValue;
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSStringValueStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSStringValueStyleDelegate.java
new file mode 100644
index 00000000000..8967f509e2a
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSStringValueStyleDelegate.java
@@ -0,0 +1,57 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.StringValueStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSStringValueStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSStringValueStyleDelegate implements CSSStringValueStyle{
+
+ private StringValueStyle stringValueStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSStringValueStyleDelegate(StringValueStyle stringValueStyle, ExtendedCSSEngine engine){
+ this.stringValueStyle = stringValueStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.stringValueStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public java.lang.String getCSSName(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "name");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getNamedStyle_Name().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+
+ public java.lang.String getCSSStringValue(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "stringValue");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getStringValueStyle_StringValue().getDefaultValue();
+ return (String)defaultValue;
+ }
+ return (String)engine.convert(cssValue, String.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSTextStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSTextStyleDelegate.java
new file mode 100644
index 00000000000..dea5a427a58
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSTextStyleDelegate.java
@@ -0,0 +1,49 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.TextAlignment;
+import org.eclipse.gmf.runtime.notation.TextStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSTextStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSTextStyleDelegate implements CSSTextStyle{
+
+ private TextStyle textStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSTextStyleDelegate(TextStyle textStyle, ExtendedCSSEngine engine){
+ this.textStyle = textStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.textStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public TextAlignment getCSSTextAlignment(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "textAlignment");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getTextStyle_TextAlignment().getDefaultValue();
+ return (TextAlignment)defaultValue;
+ }
+ return TextAlignment.get(cssValue.getCssText());
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSTitleStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSTitleStyleDelegate.java
new file mode 100644
index 00000000000..08ff9cac5b3
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src-gen/org/eclipse/papyrus/infra/gmfdiag/css/style/impl/CSSTitleStyleDelegate.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.style.impl;
+
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.TitleStyle;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.style.CSSTitleStyle;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSTitleStyleDelegate implements CSSTitleStyle{
+
+ private TitleStyle titleStyle;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ public CSSTitleStyleDelegate(TitleStyle titleStyle, ExtendedCSSEngine engine){
+ this.titleStyle = titleStyle;
+ this.engine = engine;
+ this.element = engine.getElement(this.titleStyle);
+ }
+
+ ////////////////////////////////////////////////
+ // Implements a getter for each CSS property //
+ ////////////////////////////////////////////////
+
+ public boolean isCSSShowTitle(){
+ CSSValue cssValue = engine.retrievePropertyValue(element, "showTitle");
+ if(cssValue == null) {
+ Object defaultValue = NotationPackage.eINSTANCE.getTitleStyle_ShowTitle().getDefaultValue();
+ return (Boolean)defaultValue;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/Activator.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/Activator.java
new file mode 100644
index 00000000000..2fb88878e2e
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/Activator.java
@@ -0,0 +1,75 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css;
+
+import org.eclipse.papyrus.infra.core.log.LogHelper;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.contexts.IContextService;
+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.papyrus.infra.gmfdiag.css"; //$NON-NLS-1$
+
+ public static final String CSS = "Papyrus CSS"; //ID of the CSS context //$NON-NLS-1$
+
+ // The shared instance
+ private static Activator plugin;
+
+ public static LogHelper log;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ log = new LogHelper(this);
+ IContextService contextService = (IContextService)PlatformUI.getWorkbench().getService(IContextService.class);
+ contextService.activateContext(CSS);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/BooleanConverter.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/BooleanConverter.java
new file mode 100644
index 00000000000..bf0dcd0ec79
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/BooleanConverter.java
@@ -0,0 +1,38 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.converters;
+
+import org.eclipse.e4.ui.css.core.dom.properties.converters.AbstractCSSValueConverter;
+import org.eclipse.e4.ui.css.core.dom.properties.converters.ICSSValueConverterConfig;
+import org.eclipse.e4.ui.css.core.engine.CSSEngine;
+import org.w3c.dom.css.CSSPrimitiveValue;
+import org.w3c.dom.css.CSSValue;
+
+
+public class BooleanConverter extends AbstractCSSValueConverter {
+
+ public BooleanConverter() {
+ super(Boolean.class);
+ }
+
+ public Object convert(CSSValue value, CSSEngine engine, Object context) throws Exception {
+ if(value instanceof CSSPrimitiveValue) {
+ return Boolean.parseBoolean(((CSSPrimitiveValue)value).getStringValue());
+ }
+ throw new IllegalArgumentException("The value " + value + " is not a valid Boolean");
+ }
+
+ public String convert(Object value, CSSEngine engine, Object context, ICSSValueConverterConfig config) throws Exception {
+ throw new UnsupportedOperationException();
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/ColorToGMFConverter.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/ColorToGMFConverter.java
new file mode 100644
index 00000000000..02028af4de8
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/ColorToGMFConverter.java
@@ -0,0 +1,86 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.converters;
+
+import org.eclipse.e4.ui.css.core.css2.CSS2ColorHelper;
+import org.eclipse.e4.ui.css.core.dom.properties.converters.AbstractCSSValueConverter;
+import org.eclipse.e4.ui.css.core.dom.properties.converters.ICSSValueConverterConfig;
+import org.eclipse.e4.ui.css.core.engine.CSSEngine;
+import org.eclipse.e4.ui.css.core.impl.dom.Measure;
+import org.w3c.dom.css.CSSPrimitiveValue;
+import org.w3c.dom.css.CSSValue;
+import org.w3c.dom.css.RGBColor;
+
+@SuppressWarnings("restriction")
+public class ColorToGMFConverter extends AbstractCSSValueConverter {
+
+ public static final String GMFColor = "GMFColor"; //$NON-NLS-1$
+
+ public ColorToGMFConverter() {
+ super(GMFColor);
+ }
+
+ public Object convert(CSSValue value, CSSEngine engine, Object context) throws Exception {
+ RGBColor color;
+ if(value instanceof RGBColor) {
+ color = (RGBColor)value;
+ } else if(value instanceof CSSPrimitiveValue) {
+ CSSPrimitiveValue cssValue = (CSSPrimitiveValue)value;
+ color = CSS2ColorHelper.getRGBColor(cssValue.getStringValue());
+ } else {
+ throw new IllegalArgumentException("Cannot convert " + value + " to GMF Color");
+ }
+
+ return getIntColor(color);
+ }
+
+ public String convert(Object value, CSSEngine engine, Object context, ICSSValueConverterConfig config) throws Exception {
+ throw new UnsupportedOperationException();
+ }
+
+ public static int getIntColor(RGBColor color) {
+ int red = getInt(color.getRed());
+ int green = getInt(color.getGreen());
+ int blue = getInt(color.getBlue());
+
+ return blue * 256 * 256 + green * 256 + red;
+ }
+
+ public static int getInt(CSSPrimitiveValue value) {
+ if(value instanceof Measure) {
+ Measure measure = (Measure)value;
+ return measure.getIntegerValue(CSSValue.CSS_PRIMITIVE_VALUE);
+ }
+ return (int)value.getFloatValue(CSSValue.CSS_PRIMITIVE_VALUE);
+ }
+
+ public static int getIntColor(String value, CSSValue cssValue) {
+ RGBColor color;
+ if(cssValue instanceof RGBColor) {
+ //color:rgb(125, 255, 0);
+ color = (RGBColor)cssValue;
+ } else {
+ //color:red; || color:#FFFFFF;
+ color = CSS2ColorHelper.getRGBColor(value);
+ }
+
+ if(color == null) {
+ try {
+ return Integer.parseInt(value);
+ } catch (NumberFormatException ex) {
+ return -1;
+ }
+ }
+
+ return getIntColor(color);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/IntegerConverter.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/IntegerConverter.java
new file mode 100644
index 00000000000..aa0f15ad206
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/IntegerConverter.java
@@ -0,0 +1,41 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.converters;
+
+import org.eclipse.e4.ui.css.core.dom.properties.converters.AbstractCSSValueConverter;
+import org.eclipse.e4.ui.css.core.dom.properties.converters.ICSSValueConverterConfig;
+import org.eclipse.e4.ui.css.core.engine.CSSEngine;
+import org.eclipse.e4.ui.css.core.impl.dom.Measure;
+import org.w3c.dom.css.CSSPrimitiveValue;
+import org.w3c.dom.css.CSSValue;
+
+
+public class IntegerConverter extends AbstractCSSValueConverter {
+
+ public IntegerConverter() {
+ super(Integer.class);
+ }
+
+ public Object convert(CSSValue value, CSSEngine engine, Object context) throws Exception {
+ if(value instanceof CSSPrimitiveValue) {
+ return (int)((CSSPrimitiveValue)value).getFloatValue(CSSPrimitiveValue.CSS_NUMBER);
+ }
+ if(value instanceof Measure) {
+ return (int)((Measure)value).getIntegerValue(Measure.CSS_NUMBER);
+ }
+ throw new IllegalArgumentException("The value " + value + " is not a valid Integer");
+ }
+
+ public String convert(Object value, CSSEngine engine, Object context, ICSSValueConverterConfig config) throws Exception {
+ throw new UnsupportedOperationException();
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/StringConverter.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/StringConverter.java
new file mode 100644
index 00000000000..c17671ad762
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/converters/StringConverter.java
@@ -0,0 +1,37 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.converters;
+
+import org.eclipse.e4.ui.css.core.dom.properties.converters.AbstractCSSValueConverter;
+import org.eclipse.e4.ui.css.core.dom.properties.converters.ICSSValueConverterConfig;
+import org.eclipse.e4.ui.css.core.engine.CSSEngine;
+import org.w3c.dom.css.CSSPrimitiveValue;
+import org.w3c.dom.css.CSSValue;
+
+
+public class StringConverter extends AbstractCSSValueConverter {
+
+ public StringConverter() {
+ super(String.class);
+ }
+
+ public Object convert(CSSValue value, CSSEngine engine, Object context) throws Exception {
+ if(value instanceof CSSPrimitiveValue) {
+ return ((CSSPrimitiveValue)value).getStringValue();
+ }
+ throw new IllegalArgumentException("The value " + value + " is not a valid String");
+ }
+
+ public String convert(Object value, CSSEngine engine, Object context, ICSSValueConverterConfig config) throws Exception {
+ throw new UnsupportedOperationException();
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/dom/GMFElementAdapter.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/dom/GMFElementAdapter.java
new file mode 100644
index 00000000000..78955709441
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/dom/GMFElementAdapter.java
@@ -0,0 +1,295 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.dom;
+
+import static org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSAnnotations.CSS_ANNOTATION;
+import static org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSAnnotations.CSS_GMF_CLASS_KEY;
+import static org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSAnnotations.CSS_GMF_ID_KEY;
+import static org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSAnnotations.CSS_GMF_STYLE_KEY;
+
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.e4.ui.css.core.dom.ElementAdapter;
+import org.eclipse.e4.ui.css.core.engine.CSSEngine;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.helper.SemanticElementHelper;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+
+@SuppressWarnings("restriction")
+public class GMFElementAdapter extends ElementAdapter implements NodeList {
+
+ //TODO : Use an extension point for this map, or find another way to map Diagram ID to CSS Element name
+ public static final Map<String, String> diagramNameMappings = new HashMap<String, String>();
+
+ static {
+ //UML
+ diagramNameMappings.put("CompositeStructure", "CompositeDiagram");
+ diagramNameMappings.put("Package", "PackageDiagram");
+ diagramNameMappings.put("PapyrusUMLActivityDiagram", "ActivityDiagram");
+ diagramNameMappings.put("PapyrusUMLClassDiagram", "ClassDiagram");
+ diagramNameMappings.put("PapyrusUMLCommunicationDiagram", "CommunicationDiagram");
+ diagramNameMappings.put("PapyrusUMLComponentDiagram", "ComponentDiagram");
+ diagramNameMappings.put("PapyrusUMLDeploymentDiagram", "DeploymentDiagram");
+ diagramNameMappings.put("PapyrusUMLProfileDiagram", "ProfileDiagram");
+ diagramNameMappings.put("PapyrusUMLSequenceDiagram", "SequenceDiagram");
+ diagramNameMappings.put("PapyrusUMLStateMachineDiagram", "StateMachineDiagram");
+ diagramNameMappings.put("UseCase", "UseCaseDiagram");
+
+ //SysML
+ diagramNameMappings.put("BlockDefinition", "BlockDiagram");
+ diagramNameMappings.put("InternalBlock", "InternalBlockDiagram");
+ diagramNameMappings.put("PapyrusSysMLRequirement", "RequirementDiagram");
+ diagramNameMappings.put("Parametric", "ParametricDiagram");
+ }
+
+ /**
+ * The Semantic Model Element associated to the current styled element
+ * Might also be a GMF Diagram
+ */
+ private EObject semanticElement;
+
+ /**
+ * The current GMF Element
+ */
+ private View notationElement;
+
+ /**
+ * The namespace URI of the semanticElement
+ */
+ private String namespaceURI;
+
+ /**
+ * The unqualified name of the semantic Element
+ */
+ private String localName;
+
+ /**
+ * The list of child nodes for this element
+ */
+ private Node[] children;
+
+ /**
+ * The parent node of this element
+ */
+ private Node parentNode;
+
+ public static String getCSSID(EObject sourceElement) {
+ return getCSSValue(sourceElement, CSS_GMF_ID_KEY);
+ }
+
+ public static String getCSSClass(EObject sourceElement) {
+ return getCSSValue(sourceElement, CSS_GMF_CLASS_KEY);
+ }
+
+ public static String getCSSStyle(EObject sourceElement) {
+ return getCSSValue(sourceElement, CSS_GMF_STYLE_KEY);
+ }
+
+ public static EAnnotation getStyleAnnotation(EModelElement modelElement) {
+ if(modelElement == null) {
+ return null;
+ }
+
+ return modelElement.getEAnnotation(CSS_ANNOTATION);
+ }
+
+ private static String getCSSValue(EObject sourceElement, String key) {
+ EModelElement modelElement = findModelElement(sourceElement);
+ EAnnotation annotation = getStyleAnnotation(modelElement);
+ if(annotation == null) {
+ return null;
+ }
+
+ return annotation.getDetails().get(key);
+ }
+
+ private static EModelElement findModelElement(EObject sourceElement) {
+ if(sourceElement == null) {
+ return null;
+ }
+
+ if(sourceElement instanceof EModelElement) {
+ return (EModelElement)sourceElement;
+ }
+
+ return findModelElement(sourceElement.eContainer());
+ }
+
+ public GMFElementAdapter(View view, ExtendedCSSEngine engine) {
+ super(view, engine);
+
+ notationElement = view;
+ }
+
+ private EObject getSemanticElement() {
+ if(semanticElement == null) {
+ semanticElement = SemanticElementHelper.findSemanticElement(notationElement);
+ }
+ return semanticElement;
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * Returns the first parent Notation Element representing a different semantic object
+ * than self.
+ */
+ public Node getParentNode() {
+ if(parentNode == null) {
+ View gmfElement = notationElement;
+ while(gmfElement != null) {
+ EObject semanticElement = SemanticElementHelper.findSemanticElement(gmfElement);
+
+ if(semanticElement != this.getSemanticElement()) {
+ break;
+ }
+
+ if(gmfElement == gmfElement.eContainer()) {
+ gmfElement = null;
+ break;
+ }
+
+ gmfElement = (View)gmfElement.eContainer();
+ }
+
+ parentNode = engine.getElement(gmfElement);
+ }
+
+ return parentNode;
+ }
+
+ public NodeList getChildNodes() {
+ return this;
+ }
+
+ public String getNamespaceURI() {
+ if(namespaceURI == null) {
+ namespaceURI = EMFHelper.getQualifiedName(getSemanticElement().eClass().getEPackage(), ".");
+ }
+ return namespaceURI;
+ }
+
+ public String getCSSId() {
+ return getCSSID(notationElement);
+ }
+
+ public String getCSSClass() {
+ return getCSSClass(notationElement);
+ }
+
+ public String getCSSStyle() {
+ return getCSSStyle(notationElement);
+ }
+
+ @Override
+ public String getLocalName() {
+ if(localName == null) {
+ if(getSemanticElement() instanceof Diagram) {
+ Diagram diagram = (Diagram)getSemanticElement();
+ String type = diagram.getType();
+ if(diagramNameMappings.containsKey(type)) {
+ localName = diagramNameMappings.get(type);
+ } else {
+ localName = type;
+ }
+ } else {
+ localName = getSemanticElement().eClass().getName();
+ }
+ }
+
+ return localName;
+ }
+
+ @Override
+ public String getAttribute(String attr) {
+ EStructuralFeature feature = semanticElement.eClass().getEStructuralFeature(attr);
+ if(feature != null) {
+ Object value = semanticElement.eGet(feature);
+ if(value != null) {
+ return value.toString();
+ }
+ }
+
+ return "";
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * Returns the GMF EObject handled by this adapter
+ */
+ @Override
+ public EObject getNativeWidget() {
+ return notationElement;
+ }
+
+
+
+ /////////////
+ //Node List//
+ /////////////
+
+
+
+ public Node item(int index) {
+ return getChildren()[index];
+ }
+
+ public int getLength() {
+ return getChildren().length;
+ }
+
+ private Node[] getChildren() {
+ if(children == null) {
+ children = computeChildren(notationElement, engine);
+ }
+
+ return children;
+ }
+
+ /**
+ * Returns the list of notation child elements attached to semantic
+ * elements different than self's semantic element.
+ *
+ * If a notation child element represents the same semantic element
+ * than self, returns its own children (Recursively).
+ */
+ private static Node[] computeChildren(View notationElement, CSSEngine engine) {
+ EObject semanticElement = SemanticElementHelper.findSemanticElement(notationElement);
+ List<Node> childList = new LinkedList<Node>();
+ for(EObject child : notationElement.eContents()) {
+ if(child instanceof View) {
+ View notationChild = (View)child;
+ if(SemanticElementHelper.findSemanticElement(notationChild) != semanticElement) {
+ childList.add(engine.getElement(notationChild));
+ } else {
+ childList.addAll(Arrays.asList(computeChildren(notationChild, engine)));
+ }
+ }
+ }
+
+ return childList.toArray(new Node[childList.size()]);
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/BaseCSSEngine.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/BaseCSSEngine.java
new file mode 100644
index 00000000000..9afb4a38ed4
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/BaseCSSEngine.java
@@ -0,0 +1,62 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.engine;
+
+import java.net.MalformedURLException;
+import java.net.URL;
+
+import org.eclipse.e4.ui.css.core.dom.IElementProvider;
+import org.eclipse.e4.ui.css.core.engine.CSSElementContext;
+import org.eclipse.papyrus.infra.gmfdiag.css.Activator;
+import org.w3c.dom.Element;
+
+/**
+ * The base CSS Engine. It contains the default stylesheet, which will be applied
+ * in all cases (With the lowest priority).
+ *
+ * @author Camille Letavernier
+ */
+@SuppressWarnings("restriction")
+public class BaseCSSEngine extends ExtendedCSSEngineImpl {
+
+ private BaseCSSEngine() {
+ try {
+ addStyleSheet(new URL("platform:/plugin/" + Activator.PLUGIN_ID + "/resources/base.css")); //$NON-NLS-1$ //$NON-NLS-2$
+ } catch (MalformedURLException ex) {
+ Activator.log.error(ex);
+ }
+ }
+
+ public static ExtendedCSSEngine instance = new BaseCSSEngine();
+
+ //Unsupported operations. The WorkspaceCSSEngine should never be used directly.
+
+ @Override
+ public Element getElement(Object node) {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public IElementProvider getElementProvider() {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public void setElementProvider(IElementProvider elementProvider) {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public CSSElementContext getCSSElementContext(Object node) {
+ throw new UnsupportedOperationException();
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/DiagramCSSEngine.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/DiagramCSSEngine.java
new file mode 100644
index 00000000000..40782936641
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/DiagramCSSEngine.java
@@ -0,0 +1,205 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.engine;
+
+import java.util.List;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.impl.AdapterImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.infra.gmfdiag.common.handler.RefreshHandler;
+import org.eclipse.papyrus.infra.gmfdiag.css.helper.SemanticElementHelper;
+import org.w3c.dom.Element;
+
+@SuppressWarnings("restriction")
+public class DiagramCSSEngine extends ExtendedCSSEngineImpl {
+
+ private Diagram diagram;
+
+ public DiagramCSSEngine(ExtendedCSSEngine parent, Diagram diagram) {
+ super(parent);
+ this.diagram = diagram;
+
+ setElementProvider(new GMFElementProvider());
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * Returns the GMF Notation EObject
+ */
+ @Override
+ public EObject getNativeWidget(Object element) {
+ if(element == null) {
+ return null;
+ }
+
+ if(!(element instanceof EObject)) {
+ throw new IllegalArgumentException("Unknown element : " + element);
+ }
+
+ return (EObject)element; //GMFElement
+ }
+
+ @Override
+ protected void hookNativeWidget(Object widget) {
+ if(!(widget instanceof EObject)) {
+ throw new IllegalArgumentException("Unknown element : " + widget);
+ }
+
+ EObject notationElement = (EObject)widget;
+
+ NotationListener listener = new NotationListener(notationElement);
+ notationElement.eAdapters().add(listener);
+ if(notationElement.eContainer() != null) {
+ notationElement.eContainer().eAdapters().add(listener);
+ }
+
+ EObject semanticElement = SemanticElementHelper.findSemanticElement(notationElement);
+
+ if(semanticElement != null) {
+ SemanticListener semanticListener = new SemanticListener(notationElement);
+ semanticElement.eAdapters().add(semanticListener);
+ }
+ }
+
+ @Override
+ public Element getElement(Object node) {
+ if(node == null) {
+ return null;
+ }
+
+ EObject notationElement = getNativeWidget(node);
+ View canonicalNotationElement = SemanticElementHelper.findPrimaryView(notationElement);
+
+ //A View and a Compartment associated to the same Semantic Element
+ //must have the same XML Element. They share the same children.
+ //This is required to map the Semantic model (Used by the CSS selectors)
+ //to the Notation model (Used by the CSS properties)
+ return super.getElement(canonicalNotationElement);
+ }
+
+ private class SemanticListener extends AdapterImpl {
+
+ private EObject notationElement;
+
+ private EObject semanticElement;
+
+ public SemanticListener(EObject notationElement) {
+ this.notationElement = notationElement;
+ this.semanticElement = SemanticElementHelper.findSemanticElement(notationElement);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public boolean isAdapterForType(Object type) {
+ //TODO: When should we return true ?
+ return false;
+ }
+
+ @Override
+ public void notifyChanged(Notification msg) {
+ if(semanticElement == msg.getNotifier()) {
+ if(msg.isTouch()) {
+ return;
+ }
+
+ //Refresh the editPart
+ //TODO: Use a lighter solution
+ try {
+ (new RefreshHandler()).execute(null);
+ } catch (ExecutionException e) {
+
+ }
+ }
+ }
+ }
+
+ private class NotationListener extends AdapterImpl {
+
+ private EObject notationElement;
+
+ private EObject parent;
+
+ public NotationListener(EObject notationElement) {
+ this.notationElement = notationElement;
+ this.parent = notationElement.eContainer();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public boolean isAdapterForType(Object type) {
+ //TODO: When should we return true ?
+ return false;
+ }
+
+ @Override
+ public void notifyChanged(Notification msg) {
+ //TODO: listen for View destruction
+ if(msg.isTouch()) {
+ return;
+ }
+
+ // if(msg.getNotifier() == view && msg.getFeature() == NotationPackage.eINSTANCE.getView_Element()) {
+ // //The element associated to the view has changed.
+ // //Can this happen outside of a View/Element deletion ? If so, we should refresh something...
+ // }
+
+ //The view may have been moved in another container, or it may have been destroyed. In both case, we should refresh it.
+ //We must dispose the ElementAdapter
+ //FIXME: The ElementAdapter is disposed, but it might have been cached by some methods (Such as getChildren())
+ //We should not cache elements outside of the ExtendedCSSEngine
+ if(isViewDestroyed(msg)) {
+ //Call this method when the View is destroyed or moved
+ DiagramCSSEngine.this.handleWidgetDisposed(notationElement);
+ }
+ }
+
+ private boolean isViewDestroyed(Notification msg) {
+ if(msg.getNotifier() == parent && msg.getFeature() == NotationPackage.eINSTANCE.getView_PersistedChildren()) {
+ if(msg.getEventType() == Notification.REMOVE) {
+ if(msg.getOldValue() == notationElement) {
+ return true;
+ }
+ }
+
+ if(msg.getEventType() == Notification.UNSET) {
+ return true;
+ }
+
+ if(msg.getEventType() == Notification.SET) {
+ Object newValue = msg.getNewValue();
+ if(newValue instanceof List<?>) {
+ return !((List<?>)newValue).contains(notationElement);
+ }
+ }
+
+ if(msg.getEventType() == Notification.REMOVE_MANY) {
+ Object oldValue = msg.getOldValue();
+ if(oldValue instanceof List<?>) {
+ return ((List<?>)oldValue).contains(notationElement);
+ }
+ }
+ }
+
+ return false;
+ }
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/ExtendedCSSEngine.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/ExtendedCSSEngine.java
new file mode 100644
index 00000000000..b6e1b95309e
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/ExtendedCSSEngine.java
@@ -0,0 +1,67 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.engine;
+
+import java.net.URL;
+
+import org.eclipse.e4.ui.css.core.engine.CSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.listener.StyleSheetChangeListener;
+import org.eclipse.papyrus.infra.gmfdiag.css.lists.ExtendedStyleSheetList;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public interface ExtendedCSSEngine extends LazyCSSEngine, CSSEngine {
+
+ /**
+ * Adds a stylesheet from a given URL.
+ * The kind of stylesheet (CSS vs CSSX) is determined according to the
+ * file's extension (Standard parser for CSS, extended parser for CSSX)
+ *
+ * @param inputURL
+ */
+ public void addStyleSheet(URL inputURL);
+
+ /**
+ * Adds a stylesheet from a given URL.
+ * If extended is true, the CSSX parser will be used. Otherwise,
+ * the standard CSS parser is used.
+ *
+ * @param inputURL
+ * @param extended
+ */
+ public void addStyleSheet(URL inputURL, boolean extended);
+
+ /**
+ * Resets the CSS cache
+ */
+ public void resetCache();
+
+ /**
+ * Adds a listener to be notified each time a StyleSheet has changed
+ *
+ * @param listener
+ */
+ public void addStyleSheetChangeListener(StyleSheetChangeListener listener);
+
+ /**
+ * @return The list of all stylesheets for this Engine, including the
+ * parent ones
+ */
+ public ExtendedStyleSheetList getAllStylesheets();
+
+ /**
+ * {@inheritDoc}
+ *
+ * This method never throws an Exception
+ */
+ public Object convert(CSSValue cssValue, Object toType, Object context);
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/ExtendedCSSEngineImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/ExtendedCSSEngineImpl.java
new file mode 100644
index 00000000000..4c6995482bb
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/ExtendedCSSEngineImpl.java
@@ -0,0 +1,272 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.engine;
+
+import java.io.IOException;
+import java.net.URL;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.e4.ui.css.core.dom.ExtendedDocumentCSS;
+import org.eclipse.e4.ui.css.core.dom.parsers.CSSParser;
+import org.eclipse.e4.ui.css.core.dom.parsers.CSSParserFactory;
+import org.eclipse.e4.ui.css.core.dom.parsers.ICSSParserFactory;
+import org.eclipse.e4.ui.css.core.dom.properties.converters.ICSSValueConverter;
+import org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine;
+import org.eclipse.e4.ui.css.core.impl.sac.CSSConditionFactoryImpl;
+import org.eclipse.e4.ui.css.core.impl.sac.CSSSelectorFactoryImpl;
+import org.eclipse.papyrus.infra.emf.Activator;
+import org.eclipse.papyrus.infra.gmfdiag.css.converters.BooleanConverter;
+import org.eclipse.papyrus.infra.gmfdiag.css.converters.ColorToGMFConverter;
+import org.eclipse.papyrus.infra.gmfdiag.css.converters.IntegerConverter;
+import org.eclipse.papyrus.infra.gmfdiag.css.converters.StringConverter;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.enginecopy.ExtendedViewCSSImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.listener.StyleSheetChangeListener;
+import org.eclipse.papyrus.infra.gmfdiag.css.lists.ExtendedStyleSheetList;
+import org.w3c.css.sac.ConditionFactory;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSStyleDeclaration;
+import org.w3c.dom.css.CSSValue;
+import org.w3c.dom.css.ViewCSS;
+
+/**
+ * Base implementation for a hierarchic, lazy CSS Engine.
+ *
+ * @author Camille Letavernier
+ */
+//TODO : Listen on stylesheet modifications
+@SuppressWarnings("restriction")
+public abstract class ExtendedCSSEngineImpl extends AbstractCSSEngine implements ExtendedCSSEngine, StyleSheetChangeListener {
+
+ public static final ConditionFactory CONDITIONFACTORY_INSTANCE = new CSSConditionFactoryImpl(null, "class", null, "id");
+
+ private final Map<Element, CSSStyleDeclaration> declarationsCache = new HashMap<Element, CSSStyleDeclaration>();
+
+ private ExtendedViewCSSImpl viewCSS;
+
+ protected ExtendedCSSEngine parent;
+
+ private ExtendedStyleSheetList styleSheetsList;
+
+ private final Set<StyleSheetChangeListener> styleSheetListeners = new HashSet<StyleSheetChangeListener>();
+
+ /**
+ * Owned stylesheets
+ */
+ private final List<URL> styleSheets = new LinkedList<URL>();
+
+ public ExtendedCSSEngineImpl() {
+ this(null);
+ }
+
+ public ExtendedCSSEngineImpl(ExtendedCSSEngine parent) {
+ super();
+ init(parent);
+ }
+
+ public ExtendedCSSEngineImpl(ExtendedCSSEngine parent, ExtendedDocumentCSS documentCSS) {
+ super(documentCSS);
+ init(parent);
+ }
+
+ private void init(ExtendedCSSEngine parent) {
+ if(parent != null) {
+ parent.addStyleSheetChangeListener(this);
+ }
+ viewCSS = new ExtendedViewCSSImpl(this);
+ this.parent = parent;
+
+ this.registerCSSValueConverter(new ColorToGMFConverter());
+ this.registerCSSValueConverter(new IntegerConverter());
+ this.registerCSSValueConverter(new StringConverter());
+ this.registerCSSValueConverter(new BooleanConverter());
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public String retrieveCSSProperty(Object widget, String property, String pseudo) {
+ Element element;
+ if(widget instanceof Element) {
+ element = (Element)widget;
+ } else {
+ element = getElement(widget);
+ }
+ CSSValue value = retrievePropertyValue(element, property);
+ if(value == null) {
+ return null;
+ }
+ return value.getCssText();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public CSSValue retrievePropertyValue(Element element, String property) {
+ if(element == null || property == null) {
+ return null;
+ }
+
+ CSSStyleDeclaration declaration = getStyleDeclaration(element);
+
+ return declaration.getPropertyCSSValue(property);
+ }
+
+ private CSSStyleDeclaration getStyleDeclaration(Element element) {
+ return getStyleDeclaration(element, null);
+ }
+
+ private CSSStyleDeclaration getStyleDeclaration(Element element, String pseudo) {
+ if(!declarationsCache.containsKey(element)) {
+ declarationsCache.put(element, getViewCSS().getComputedStyle(element, pseudo));
+ }
+ return declarationsCache.get(element);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void addStyleSheet(URL styleSheetURL) {
+ styleSheets.add(styleSheetURL);
+ reset();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void addStyleSheet(URL inputURL, boolean extended) {
+ //TODO : Extended CSS
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void reset() {
+ resetCache();
+ super.reset();
+ fireStyleSheetChanged();
+ }
+
+ //FIXME : Determine precisely the lifecycle of the cache
+ //When is it built ; when is it cleaned
+ /**
+ * {@inheritDoc}
+ */
+ public void resetCache() {
+ declarationsCache.clear();
+ styleSheetsList = null;
+ }
+
+ private void parseStyleSheets() {
+ for(URL styleSheetURL : styleSheets) {
+ try {
+ parseStyleSheet(styleSheetURL.openStream());
+ } catch (IOException ex) {
+ Activator.log.error("Cannot parse styleSheet at URL : " + styleSheetURL, ex);
+ }
+ }
+ }
+
+ @Override
+ public CSSParser makeCSSParser() {
+ //TODO : Extended parser (CSSX)
+ //if(isExtended) {
+ // return makeExtendedCSSParser();
+ //}
+
+ // Create CSS Parser
+ ICSSParserFactory factory = CSSParserFactory.newInstance();
+ CSSParser parser = factory.makeCSSParser();
+
+ // Register Batik CSS Selector factory.
+ parser.setSelectorFactory(CSSSelectorFactoryImpl.INSTANCE);
+
+ // Register Custom CSS Condition factory.
+ parser.setConditionFactory(CONDITIONFACTORY_INSTANCE);
+
+ return parser;
+ }
+
+ @Override
+ public ViewCSS getViewCSS() {
+ return viewCSS;
+ }
+
+ public void styleSheetChanged(ExtendedCSSEngine owner) {
+ reset();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ private void fireStyleSheetChanged() {
+ for(StyleSheetChangeListener listener : styleSheetListeners) {
+ listener.styleSheetChanged(this);
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void addStyleSheetChangeListener(StyleSheetChangeListener listener) {
+ styleSheetListeners.add(listener);
+ }
+
+ public ExtendedStyleSheetList getAllStylesheets() {
+ if(styleSheetsList == null) {
+ parseStyleSheets();
+ styleSheetsList = new ExtendedStyleSheetList(getDocumentCSS().getStyleSheets());
+ if(parent != null) {
+ styleSheetsList.addAll(parent.getAllStylesheets());
+ }
+ }
+
+ return styleSheetsList;
+ }
+
+ @Override
+ public Object convert(CSSValue value, Object toType, Object context) {
+ try {
+ return super.convert(value, toType, context);
+ } catch (Exception ex) {
+ //Activator.log.warn("Unsupported CSS value: " + value.getCssText() + ". Trying to convert it...");
+ return convert(value, toType); //FIXME: Sometimes, the conversion is not supported by the AbstractCSSEngine
+ }
+ }
+
+ //Smaller implementation of convert(). Doesn't rely on cache nor any kind of registry
+ //Call this method when the super implementation fails (UnsupportedOperationException...)
+ protected Object convert(CSSValue value, Object toType) {
+ ICSSValueConverter converter = getCSSValueConverter(toType);
+ if(converter != null) {
+ try {
+ return converter.convert(value, this, null);
+ } catch (Exception ex) {
+ handleExceptions(ex);
+ }
+ }
+ return value;
+ }
+
+ @Override
+ public void dispose() {
+ getElementsContext(); //FIXME: Avoid a NullPointerException in super.dispose()...
+ super.dispose();
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/GMFElementProvider.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/GMFElementProvider.java
new file mode 100644
index 00000000000..44415df8e83
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/GMFElementProvider.java
@@ -0,0 +1,41 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.engine;
+
+import org.eclipse.e4.ui.css.core.dom.IElementProvider;
+import org.eclipse.e4.ui.css.core.engine.CSSEngine;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.infra.gmfdiag.css.dom.GMFElementAdapter;
+import org.w3c.dom.Element;
+
+/**
+ * Provides an Element for a GMF Notation object.
+ *
+ * @author Camille Letavernier
+ */
+@SuppressWarnings("restriction")
+public class GMFElementProvider implements IElementProvider {
+
+ public Element getElement(Object element, CSSEngine engine) {
+
+ if(!(element instanceof View)) {
+ throw new IllegalArgumentException("Unknown element : " + element);
+ }
+
+ if(!(engine instanceof ExtendedCSSEngine)) {
+ throw new IllegalArgumentException("Invalid CSS Engine : " + engine);
+ }
+
+ return new GMFElementAdapter((View)element, (ExtendedCSSEngine)engine);
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/GMFErrorHandler.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/GMFErrorHandler.java
new file mode 100644
index 00000000000..c238332735c
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/GMFErrorHandler.java
@@ -0,0 +1,24 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.engine;
+
+import org.eclipse.e4.ui.css.core.engine.CSSErrorHandler;
+import org.eclipse.papyrus.infra.gmfdiag.css.Activator;
+
+@SuppressWarnings("restriction")
+public class GMFErrorHandler implements CSSErrorHandler {
+
+ public void error(Exception ex) {
+ Activator.log.error("CSS Error", ex); //$NON-NLS-1$
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/LazyCSSEngine.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/LazyCSSEngine.java
new file mode 100644
index 00000000000..172b946680f
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/LazyCSSEngine.java
@@ -0,0 +1,30 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.engine;
+
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+
+/**
+ * An interface for Lazy CSS Engine
+ *
+ * The Engine doesn't modify an Element. Instead, for an element, it returns the
+ * value of the required property.
+ *
+ * @author Camille Letavernier
+ */
+public interface LazyCSSEngine {
+
+ public CSSValue retrievePropertyValue(Element element, String property);
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/ModelCSSEngine.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/ModelCSSEngine.java
new file mode 100644
index 00000000000..5a35c9c3d4f
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/ModelCSSEngine.java
@@ -0,0 +1,25 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.engine;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+@SuppressWarnings("restriction")
+public class ModelCSSEngine extends ExtendedCSSEngineImpl {
+
+ private Resource model;
+
+ public ModelCSSEngine(Resource model) {
+ super(WorkspaceCSSEngine.instance);
+ this.model = model;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/WorkspaceCSSEngine.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/WorkspaceCSSEngine.java
new file mode 100644
index 00000000000..4d565bbee8c
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/WorkspaceCSSEngine.java
@@ -0,0 +1,64 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.engine;
+
+import java.net.MalformedURLException;
+import java.net.URL;
+
+import org.eclipse.e4.ui.css.core.dom.IElementProvider;
+import org.eclipse.e4.ui.css.core.engine.CSSElementContext;
+import org.eclipse.papyrus.infra.gmfdiag.css.Activator;
+import org.w3c.dom.Element;
+
+/**
+ * A Singleton CSSEngine, handling the CSS stylesheets applied to the whole
+ * workspace
+ *
+ * @author Camille Letavernier
+ *
+ */
+@SuppressWarnings("restriction")
+public class WorkspaceCSSEngine extends ExtendedCSSEngineImpl {
+
+ private WorkspaceCSSEngine() {
+ super(BaseCSSEngine.instance);
+ try {
+ addStyleSheet(new URL("platform:/plugin/" + Activator.PLUGIN_ID + "/resources/papyrus_theme.css"));
+ } catch (MalformedURLException ex) {
+ Activator.log.error(ex);
+ }
+ }
+
+ public static ExtendedCSSEngine instance = new WorkspaceCSSEngine();
+
+ //Unsupported operations. The WorkspaceCSSEngine should never be used directly.
+
+ @Override
+ public Element getElement(Object node) {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public IElementProvider getElementProvider() {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public void setElementProvider(IElementProvider elementProvider) {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public CSSElementContext getCSSElementContext(Object node) {
+ throw new UnsupportedOperationException();
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/enginecopy/CSSComputedStyleImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/enginecopy/CSSComputedStyleImpl.java
new file mode 100644
index 00000000000..a4e6bab386e
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/enginecopy/CSSComputedStyleImpl.java
@@ -0,0 +1,58 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2009 Angelo Zerr and others.
+ * 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:
+ * Angelo Zerr <angelo.zerr@gmail.com> - initial API and implementation
+ * EclipseSource - revision
+ * IBM Corporation - ongoing development
+ *******************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.engine.enginecopy;
+
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.e4.ui.css.core.dom.CSSProperty;
+import org.eclipse.e4.ui.css.core.dom.CSSPropertyList;
+import org.eclipse.e4.ui.css.core.impl.dom.CSSStyleDeclarationImpl;
+import org.w3c.dom.css.CSSStyleDeclaration;
+
+
+/**
+ * CSS computed style which concatenate list of CSSComputedStyleImpl to manage
+ * styles coming from Condition Selector (ex : Label#MyId) and other selectors
+ * (ex : Label).
+ */
+@SuppressWarnings({ "serial", "restriction" })
+public class CSSComputedStyleImpl extends CSSStyleDeclarationImpl implements CSSStyleDeclaration {
+
+ private List<StyleWrapper> styleRules;
+
+ public CSSComputedStyleImpl(List<StyleWrapper> styleRules) {
+ super(null);
+ this.styleRules = styleRules;
+ // TODO [rst] Optimize: A list of StyleWrapper instances could be sorted
+ // only once after reading the stylesheet(s).
+ Collections.sort(this.styleRules, StyleWrapper.COMPARATOR);
+ Iterator<StyleWrapper> iterator = this.styleRules.iterator();
+ while(iterator.hasNext()) {
+ StyleWrapper styleWrapper = iterator.next();
+ addCSSPropertyList(((CSSStyleDeclarationImpl)styleWrapper.style).getCSSPropertyList());
+ }
+ }
+
+ private void addCSSPropertyList(CSSPropertyList properties) {
+ int length = properties.getLength();
+ for(int i = 0; i < length; i++) {
+ CSSProperty property = properties.item(i);
+
+ super.removeProperty(property.getName());
+ super.addProperty(property);
+ }
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/enginecopy/ExtendedViewCSSImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/enginecopy/ExtendedViewCSSImpl.java
new file mode 100644
index 00000000000..0aa6acf6f59
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/enginecopy/ExtendedViewCSSImpl.java
@@ -0,0 +1,146 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.engine.enginecopy;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.e4.ui.css.core.dom.CSSStylableElement;
+import org.eclipse.e4.ui.css.core.dom.ExtendedCSSRule;
+import org.eclipse.e4.ui.css.core.impl.dom.ViewCSSImpl;
+import org.eclipse.e4.ui.css.core.impl.sac.ExtendedSelector;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.lists.ExtendedStyleSheetList;
+import org.w3c.css.sac.Selector;
+import org.w3c.css.sac.SelectorList;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSRule;
+import org.w3c.dom.css.CSSRuleList;
+import org.w3c.dom.css.CSSStyleDeclaration;
+import org.w3c.dom.css.CSSStyleRule;
+import org.w3c.dom.css.CSSStyleSheet;
+import org.w3c.dom.css.ViewCSS;
+import org.w3c.dom.stylesheets.StyleSheet;
+import org.w3c.dom.views.DocumentView;
+
+
+@SuppressWarnings("restriction")
+public class ExtendedViewCSSImpl implements ViewCSS {
+
+ protected ExtendedCSSEngine engine;
+
+ public ExtendedViewCSSImpl(ExtendedCSSEngine extendedCSSEngine) {
+ this.engine = extendedCSSEngine;
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * Implementation based on {@link ViewCSSImpl#getComputedStyle(Element, String)} The base implementations returns the first CSSStyleDeclaration.
+ *
+ * When a StyleDeclaration is found in a StyleSheet, it is added to a list of declarations.
+ * Then, these declarations are merged
+ */
+ public CSSStyleDeclaration getComputedStyle(Element elt, String pseudo) {
+
+ ExtendedStyleSheetList styleSheetList = engine.getAllStylesheets();
+
+ List<StyleWrapper> declarations = new ArrayList<StyleWrapper>();
+
+ //Stylesheets
+ for(StyleSheet styleSheet : styleSheetList) {
+ List<StyleWrapper> styleWrappers = getStyleWrappers((CSSStyleSheet)styleSheet, elt, pseudo);
+ declarations.addAll(styleWrappers);
+ }
+
+ //Local styles
+ String localStyles = ((CSSStylableElement)elt).getCSSStyle();
+ if(localStyles != null) {
+ StyleWrapper wrapper = getStyleWrapper(localStyles);
+ if(wrapper != null) {
+ declarations.add(wrapper);
+ }
+ }
+
+ return new CSSComputedStyleImpl(declarations);
+ }
+
+ private StyleWrapper getStyleWrapper(String localStyles) {
+ CSSStyleDeclaration style;
+ try {
+ style = engine.parseStyleDeclaration(localStyles);
+ StyleWrapper wrapper = new StyleWrapper(style, Integer.MAX_VALUE, 0);
+ return wrapper;
+ } catch (IOException ex) {
+ engine.handleExceptions(ex);
+ }
+ return null;
+ }
+
+ /**
+ * Implementation based on {@link ViewCSSImpl#getComputedStyle(CSSStyleSheet, Element, String)}
+ *
+ * Returns the StyleWrappers instead of a StyleDeclaration
+ */
+ private List<StyleWrapper> getStyleWrappers(CSSStyleSheet styleSheet, Element elt, String pseudoElt) {
+ List<StyleWrapper> styleDeclarations = new ArrayList<StyleWrapper>();
+ CSSRuleList ruleList = styleSheet.getCssRules();
+ int length = ruleList.getLength();
+ int position = 0;
+ for(int i = 0; i < length; i++) {
+ CSSRule rule = ruleList.item(i);
+ switch(rule.getType()) {
+ case CSSRule.STYLE_RULE:
+ {
+ CSSStyleRule styleRule = (CSSStyleRule)rule;
+ if(rule instanceof ExtendedCSSRule) {
+ ExtendedCSSRule r = (ExtendedCSSRule)rule;
+ SelectorList selectorList = r.getSelectorList();
+ // Loop for SelectorList
+ int l = selectorList.getLength();
+ for(int j = 0; j < l; j++) {
+ Selector selector = selectorList.item(j);
+ if(selector instanceof ExtendedSelector) {
+ ExtendedSelector extendedSelector = (ExtendedSelector)selector;
+ if(extendedSelector.match(elt, pseudoElt)) {
+ CSSStyleDeclaration style = styleRule.getStyle();
+ int specificity = extendedSelector.getSpecificity();
+ StyleWrapper wrapper = new StyleWrapper(style, specificity, position++);
+ styleDeclarations.add(wrapper);
+ }
+ } else {
+ // TODO : selector is not batik ExtendedSelector,
+ // Manage this case...
+ }
+ }
+ } else {
+ // TODO : CSS rule is not ExtendedCSSRule,
+ // Manage this case...
+ }
+ }
+ }
+ }
+
+ return styleDeclarations;
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * Unsupported
+ * TODO : Do we need an implementation ?
+ */
+ public DocumentView getDocument() {
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/enginecopy/StyleWrapper.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/enginecopy/StyleWrapper.java
new file mode 100644
index 00000000000..3a0ef91f134
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/engine/enginecopy/StyleWrapper.java
@@ -0,0 +1,56 @@
+/*******************************************************************************
+ * Copyright (c) 2009 EclipseSource and others. 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:
+ * EclipseSource - initial API and implementation
+ ******************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.engine.enginecopy;
+
+import java.util.Comparator;
+
+import org.w3c.dom.css.CSSStyleDeclaration;
+
+/**
+ * A wrapper that holds a reference to the styles defined in a CSS rule block,
+ * together with all the information needed to calculate a matching selector's
+ * precedence.
+ */
+final class StyleWrapper {
+
+ private static class StyleWrapperComparator implements Comparator<StyleWrapper> {
+
+ public int compare(final StyleWrapper wrapper1, final StyleWrapper wrapper2) {
+ int result = 0;
+ if(wrapper1.specificity > wrapper2.specificity) {
+ result = 1;
+ } else if(wrapper1.specificity < wrapper2.specificity) {
+ result = -1;
+ } else if(wrapper1.position > wrapper2.position) {
+ result = 1;
+ } else if(wrapper1.position < wrapper2.position) {
+ result = -1;
+ }
+ return result;
+ }
+ }
+
+ /**
+ * A comparator for {@link StyleWrapper}s.
+ */
+ public static final StyleWrapperComparator COMPARATOR = new StyleWrapperComparator();
+
+ public final CSSStyleDeclaration style;
+
+ public final int specificity;
+
+ public final int position;
+
+ public StyleWrapper(CSSStyleDeclaration style, int specificity, int position) {
+ this.style = style;
+ this.specificity = specificity;
+ this.position = position;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/handler/CSSRefreshHandler.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/handler/CSSRefreshHandler.java
new file mode 100644
index 00000000000..6925a6eae70
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/handler/CSSRefreshHandler.java
@@ -0,0 +1,28 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.handler;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.papyrus.infra.gmfdiag.common.handler.RefreshHandler;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.BaseCSSEngine;
+
+
+public class CSSRefreshHandler extends RefreshHandler {
+
+ @SuppressWarnings("restriction")
+ @Override
+ public Object execute(ExecutionEvent event) throws ExecutionException {
+ BaseCSSEngine.instance.reset();
+ return super.execute(event);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/GradientHelper.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/GradientHelper.java
new file mode 100644
index 00000000000..e6cab944a83
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/GradientHelper.java
@@ -0,0 +1,137 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.helper;
+
+import java.io.IOException;
+
+import org.eclipse.gmf.runtime.notation.GradientStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.datatype.GradientData;
+import org.eclipse.papyrus.infra.gmfdiag.css.converters.ColorToGMFConverter;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+
+public class GradientHelper {
+
+ public static final String GRADIENT_VERTICAL = "vertical";
+
+ public static final String GRADIENT_HORIZONTAL = "horizontal";
+
+ //Type 1 :
+ //gradientColor:#ABCDEF;
+ //gradientStyle:vertical;
+
+ //Type 2 :
+ //(gradient:#FEDCBA #ABCDEF horizontal;) //Currently not supported, as diagrams usually seek for #fillColor()
+ //gradient:#ABCDEF horizontal;
+ //gradient:#ABCDEF
+ //gradient:horizontal
+
+ //TODO: The Engine should provide a method to handle complex composite properties.
+ //The base CSS Engine provides such a feature. However, it is not powerful enough.
+ public static GradientData computeGradient(ExtendedCSSEngine engine, Element element) {
+ //Type 1
+ CSSValue gradientColor = engine.retrievePropertyValue(element, "gradientColor");
+ CSSValue gradientStyle = engine.retrievePropertyValue(element, "gradientStyle");
+
+ if(gradientColor != null || gradientStyle != null) {
+ int color1 = (Integer)engine.convert(gradientColor, ColorToGMFConverter.GMFColor, null);
+ int color2 = 0; //Unused by Papyrus diagrams
+ int style = getGradientStyle(gradientStyle.getCssText());
+ GradientData data = new GradientData(color1, color2, style);
+ return data;
+ }
+
+ //Type 2
+ CSSValue gradient = engine.retrievePropertyValue(element, "gradient");
+
+ if(gradient != null) {
+ String gradientString = gradient.getCssText();
+
+ if(StringHelper.equals(gradientString, "none")) {
+ return null;
+ }
+
+ int[] gradientValues = parseGradient(engine, gradientString);
+ return new GradientData(gradientValues[0], gradientValues[1], gradientValues[2]);
+ }
+
+ //Default
+ return (GradientData)NotationPackage.eINSTANCE.getFillStyle_Gradient().getDefaultValue();
+ }
+
+ /** [color1, color2, style] */
+ private static int[] parseGradient(ExtendedCSSEngine engine, String gradient) {
+ String color1, color2, style;
+ color1 = color2 = style = null;
+
+ String[] values = ParserHelper.parseValues(engine, gradient);
+
+ if(values.length == 3) {
+ color1 = values[0];
+ color2 = values[1];
+ style = values[2];
+ } else if(values.length == 2) {
+ color1 = values[0];
+ String value = values[1];
+ if(isGradientStyle(value)) {
+ style = value;
+ } else {
+ color2 = value;
+ }
+ } else if(values.length == 1) {
+ String value = values[0];
+ if(isGradientStyle(value)) {
+ style = value;
+ } else {
+ color1 = value;
+ }
+ }
+
+ return parseGradient(engine, color1, color2, style);
+ }
+
+ private static int[] parseGradient(ExtendedCSSEngine engine, String sColor1, String sColor2, String sStyle) {
+ int color1, color2, style;
+ color1 = color2 = style = -1;
+
+ CSSValue cssColor1;
+ try {
+ cssColor1 = engine.parsePropertyValue(sColor1);
+ color1 = (Integer)engine.convert(cssColor1, ColorToGMFConverter.GMFColor, null);
+ color2 = 0; //Unused
+ style = getGradientStyle(sStyle);
+ } catch (IOException ex) {
+ engine.handleExceptions(ex);
+ }
+
+
+ return new int[]{ color1, color2, style };
+ }
+
+ private static boolean isGradientStyle(String value) {
+ return StringHelper.equals(GRADIENT_VERTICAL, value) || StringHelper.equals(GRADIENT_HORIZONTAL, value);
+ }
+
+ private static int getGradientStyle(String gradientStyle) {
+ if(StringHelper.equals(GRADIENT_VERTICAL, gradientStyle)) {
+ return GradientStyle.VERTICAL;
+ } else if(StringHelper.equals(GRADIENT_HORIZONTAL, gradientStyle)) {
+ return GradientStyle.HORIZONTAL;
+ }
+
+ //Default value
+ return new GradientData().getGradientStyle();
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/ParserHelper.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/ParserHelper.java
new file mode 100644
index 00000000000..3c81614ac77
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/ParserHelper.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.helper;
+
+import java.io.IOException;
+
+import org.eclipse.e4.ui.css.core.engine.CSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.Activator;
+import org.w3c.dom.css.CSSValue;
+import org.w3c.dom.css.CSSValueList;
+
+@SuppressWarnings("restriction")
+public class ParserHelper {
+
+ public static String[] parseValues(CSSEngine engine, String value) {
+ CSSValue cssValue;
+ try {
+ cssValue = engine.parsePropertyValue(value);
+ } catch (IOException ex) {
+ Activator.log.error(ex);
+ return new String[0];
+ }
+
+ if(cssValue instanceof CSSValueList) {
+ CSSValueList list = (CSSValueList)cssValue;
+ return toArray(list);
+ }
+
+ return new String[]{ cssValue.getCssText() };
+ }
+
+ public static String[] toArray(CSSValueList valueList) {
+ String[] result = new String[valueList.getLength()];
+ for(int i = 0; i < result.length; i++) {
+ result[i] = valueList.item(i).getCssText();
+ }
+ return result;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/SemanticElementHelper.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/SemanticElementHelper.java
new file mode 100644
index 00000000000..2e71ddfcc91
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/SemanticElementHelper.java
@@ -0,0 +1,91 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.helper;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.infra.emf.Activator;
+
+public class SemanticElementHelper {
+
+ /**
+ * Returns the semantic element attached to the given notation element
+ *
+ * The result element can also be a Diagram
+ */
+ public static EObject findSemanticElement(EObject notationElement) {
+ if(notationElement instanceof Diagram) {
+ return notationElement;
+ }
+
+ EObject currentElement = notationElement;
+
+ do {
+ if(currentElement instanceof View) {
+ View view = (View)currentElement;
+ if(view.getElement() != null) {
+ return view.getElement();
+ }
+ //The graphical element isn't related to a Semantic Element. The view becomes the semantic element.
+ //e.g. : Links in UML
+ return view;
+ }
+ currentElement = currentElement.eContainer();
+ } while(currentElement != null);
+
+ Activator.log.warn("Cannot find a valid source for " + notationElement);
+ return notationElement;
+ }
+
+ /**
+ * Retrieves the primary view associated to the argument.
+ *
+ * For example, for a compartment, this method will return the top-most
+ * view associated to the same semantic element.
+ *
+ * @param notationElement
+ * @return
+ */
+ public static View findPrimaryView(EObject notationElement) {
+ return findTopView(notationElement);
+ }
+
+ /**
+ * Finds the top-most View associated to the same semantic
+ * element as the argument.
+ *
+ * @param notationElement
+ * @return
+ */
+ public static View findTopView(EObject notationElement) {
+ EObject semanticElement = findSemanticElement(notationElement);
+
+ if(semanticElement == notationElement) {
+ return (View)notationElement;
+ }
+
+ EObject lastNotationElement = notationElement;
+ while(notationElement != null) {
+ notationElement = notationElement.eContainer();
+ if(findSemanticElement(notationElement) != semanticElement) {
+ return (View)lastNotationElement;
+ }
+
+ if(notationElement != null) {
+ lastNotationElement = notationElement;
+ }
+ }
+
+ return (View)lastNotationElement;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/StringHelper.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/StringHelper.java
new file mode 100644
index 00000000000..c3ac1d215fc
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/helper/StringHelper.java
@@ -0,0 +1,32 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.helper;
+
+public class StringHelper {
+
+ /**
+ * Compares two strings. Case insensitive. The Strings are trimed.
+ *
+ * Null strings already return false
+ *
+ * @param s1
+ * @param s2
+ * @return
+ */
+ public static boolean equals(String s1, String s2) {
+ if(s1 == null || s2 == null) {
+ return false;
+ }
+
+ return s1.trim().toLowerCase().equals(s2.trim().toLowerCase());
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/listener/StyleSheetChangeListener.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/listener/StyleSheetChangeListener.java
new file mode 100644
index 00000000000..5c4352eedad
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/listener/StyleSheetChangeListener.java
@@ -0,0 +1,20 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.listener;
+
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+
+
+public interface StyleSheetChangeListener {
+
+ public void styleSheetChanged(ExtendedCSSEngine owner);
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/lists/ExtendedCSSRuleList.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/lists/ExtendedCSSRuleList.java
new file mode 100644
index 00000000000..ccb4a7e6e6d
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/lists/ExtendedCSSRuleList.java
@@ -0,0 +1,47 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.lists;
+
+import java.util.Collection;
+import java.util.LinkedList;
+
+import org.w3c.dom.css.CSSRule;
+import org.w3c.dom.css.CSSRuleList;
+
+
+public class ExtendedCSSRuleList extends LinkedList<CSSRule> implements CSSRuleList {
+
+ private static final long serialVersionUID = 1L;
+
+ public ExtendedCSSRuleList() {
+
+ }
+
+ public ExtendedCSSRuleList(CSSRuleList listToCopy) {
+ for(int i = 0; i < listToCopy.getLength(); i++) {
+ add(listToCopy.item(i));
+ }
+ }
+
+ public ExtendedCSSRuleList(Collection<? extends CSSRule> listToCopy) {
+ super(listToCopy);
+ }
+
+ public int getLength() {
+ return size();
+ }
+
+ public CSSRule item(int index) {
+ return get(index);
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/lists/ExtendedSelectorList.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/lists/ExtendedSelectorList.java
new file mode 100644
index 00000000000..4f227fe62c5
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/lists/ExtendedSelectorList.java
@@ -0,0 +1,47 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.lists;
+
+import java.util.Collection;
+import java.util.LinkedList;
+
+import org.w3c.css.sac.Selector;
+import org.w3c.css.sac.SelectorList;
+
+
+public class ExtendedSelectorList extends LinkedList<Selector> implements SelectorList {
+
+ private static final long serialVersionUID = 0;
+
+ public ExtendedSelectorList() {
+
+ }
+
+ public ExtendedSelectorList(SelectorList listToCopy) {
+ for(int i = 0; i < listToCopy.getLength(); i++) {
+ add(listToCopy.item(i));
+ }
+ }
+
+ public ExtendedSelectorList(Collection<? extends Selector> listToCopy) {
+ super(listToCopy);
+ }
+
+ public int getLength() {
+ return size();
+ }
+
+ public Selector item(int index) {
+ return get(index);
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/lists/ExtendedStyleSheetList.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/lists/ExtendedStyleSheetList.java
new file mode 100644
index 00000000000..390d9a3efd9
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/lists/ExtendedStyleSheetList.java
@@ -0,0 +1,47 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.lists;
+
+import java.util.Collection;
+import java.util.LinkedList;
+
+import org.w3c.dom.stylesheets.StyleSheet;
+import org.w3c.dom.stylesheets.StyleSheetList;
+
+
+public class ExtendedStyleSheetList extends LinkedList<StyleSheet> implements StyleSheetList {
+
+ private static final long serialVersionUID = 1L;
+
+ public ExtendedStyleSheetList() {
+
+ }
+
+ public ExtendedStyleSheetList(StyleSheetList listToCopy) {
+ for(int i = 0; i < listToCopy.getLength(); i++) {
+ add(listToCopy.item(i));
+ }
+ }
+
+ public ExtendedStyleSheetList(Collection<? extends StyleSheet> listToCopy) {
+ super(listToCopy);
+ }
+
+ public int getLength() {
+ return size();
+ }
+
+ public StyleSheet item(int index) {
+ return get(index);
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/notation/CSSAnnotations.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/notation/CSSAnnotations.java
new file mode 100644
index 00000000000..352e6d30ad9
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/notation/CSSAnnotations.java
@@ -0,0 +1,50 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.notation;
+
+public interface CSSAnnotations {
+
+ /**
+ * The css id property
+ */
+ public static final String CSS_GMF_ID_KEY = "cssId"; //$NON-NLS-1$
+
+ /**
+ * The css class property
+ */
+ public static final String CSS_GMF_CLASS_KEY = "cssClass"; //$NON-NLS-1$
+
+ /**
+ * The css style property
+ */
+ public static final String CSS_GMF_STYLE_KEY = "cssStyle"; //$NON-NLS-1$
+
+ /**
+ * The Diagram Stylesheets key
+ */
+ public static final Object CSS_DIAGRAM_STYLESHEETS_KEY = "styleSheets"; //$NON-NLS-1$
+
+ /**
+ * The name of the EAnnotation containing css informations
+ *
+ * @see CSS_GMF_ID_KEY
+ * @see CSS_GMF_CLASS_KEY
+ * @see CSS_GMF_STYLE_KEY
+ */
+ public static final String CSS_ANNOTATION = "PapyrusCSS"; //$NON-NLS-1$
+
+ /**
+ * The name of the EAnnotation containing the list of feature names
+ * for which the value has been forced by the user.
+ */
+ public static final String CSS_FORCE_VALUE = "PapyrusCSSForceValue"; //$NON-NLS-1$
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/notation/CSSDiagramImpl.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/notation/CSSDiagramImpl.java
new file mode 100644
index 00000000000..fd9cc1f3c5c
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/notation/CSSDiagramImpl.java
@@ -0,0 +1,37 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.notation;
+
+import org.eclipse.gmf.runtime.notation.impl.DiagramImpl;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.DiagramCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.resource.CSSNotationResource;
+
+public class CSSDiagramImpl extends DiagramImpl {
+
+ protected ExtendedCSSEngine engine;
+
+ public ExtendedCSSEngine getEngine() {
+ if(engine == null) {
+ engine = new DiagramCSSEngine(getModelEngine(), this);
+ }
+ return engine;
+ }
+
+ protected ExtendedCSSEngine getModelEngine() {
+ if(eResource() instanceof CSSNotationResource) {
+ return ((CSSNotationResource)eResource()).getEngine();
+ }
+ return null;
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/notation/ForceValueHelper.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/notation/ForceValueHelper.java
new file mode 100644
index 00000000000..5366062ac87
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/notation/ForceValueHelper.java
@@ -0,0 +1,130 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.notation;
+
+import org.eclipse.emf.common.util.EMap;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.gmf.runtime.notation.View;
+
+/**
+ * This helper handles the EAnnotation used to distinguish between an EMF
+ * "unset" value and a "default value" (Which cannot be distinguished for
+ * mandatory values in the standard EMF implementation).
+ *
+ * The CSS support is only activated for properties which don't have a value.
+ * The problem is that in GMF, some properties always have a value, which
+ * would prevent the CSS from working.
+ *
+ * Thus, we distinguish three cases:
+ *
+ * - The property has a value different from the default value: isSet = true
+ * - The property has a value equal to the default value: isSet = false
+ * - The property has a value equal to the default value, and the ForceValue
+ * annotation is defined: isSet = true
+ *
+ * unsetValue(object, feature) always results in isSet(object, feature) = false
+ * (Which is not always the EMF behavior)
+ *
+ * In order not to contaminate default GMF Models, these methods are only
+ * applied if the resource is a CSSNotationResource. Otherwise, the behavior
+ * is the standard EMF/GMF one.
+ *
+ * @author Camille Letavernier
+ */
+public class ForceValueHelper {
+
+ public static void setValue(View view, EStructuralFeature feature, Object value) {
+ if(!isCSSView(view)) {
+ //Do not contaminate non-Papyrus models
+ return;
+ }
+
+ //Adds the annotation which indicates that the value has been forced, if needed
+
+ if(equals(value, feature.getDefaultValue())) {
+ // System.out.println("Forcing default value for " + view);
+ String annotationKey = feature.getName();
+ EAnnotation eAnnotation = view.getEAnnotation(CSSAnnotations.CSS_FORCE_VALUE);
+ if(eAnnotation == null) {
+ eAnnotation = EcorePackage.eINSTANCE.getEcoreFactory().createEAnnotation();
+ eAnnotation.setEModelElement(view);
+ eAnnotation.setSource(CSSAnnotations.CSS_FORCE_VALUE);
+ }
+
+ EMap<String, String> details = eAnnotation.getDetails();
+ details.put(annotationKey, Boolean.toString(true));
+ }
+ }
+
+ private static boolean isCSSView(View view) {
+ return false;
+ // return view != null && view.eResource() instanceof CSSNotationResource;
+ }
+
+ private static boolean equals(Object value1, Object value2) {
+ if(value1 == null) {
+ return value2 == null;
+ }
+ return value1.equals(value2);
+ }
+
+ public static void unsetValue(View view, EStructuralFeature feature) {
+ if(!isCSSView(view)) {
+ //Do not contaminate non-Papyrus models
+ return;
+ }
+
+ //Remove the annotation which forces the value, if needed
+
+ String annotationKey = feature.getName();
+ EAnnotation eAnnotation = view.getEAnnotation(CSSAnnotations.CSS_FORCE_VALUE);
+ if(eAnnotation != null) {
+ EMap<String, String> details = eAnnotation.getDetails();
+ details.remove(annotationKey);
+ if(details.isEmpty()) {
+ view.getEAnnotations().remove(eAnnotation);
+ }
+ }
+ }
+
+ public static boolean isSet(View view, EStructuralFeature feature, Object value) {
+ return isSet(view, view, feature, value);
+ }
+
+ public static boolean isSet(View annotationContext, EObject style, EStructuralFeature feature, Object value) {
+ boolean defaultIsSet = style.eIsSet(feature);
+ if(!isCSSView(annotationContext)) {
+ //Do not contaminate non-Papyrus models
+ return true;
+ }
+
+ if(!defaultIsSet) {
+ return false;
+ }
+
+ if(equals(value, feature.getDefaultValue())) {
+ EAnnotation eAnnotation = annotationContext.getEAnnotation(CSSAnnotations.CSS_FORCE_VALUE);
+ if(eAnnotation == null) {
+ return false;
+ }
+
+ String annotationKey = feature.getName();
+
+ return eAnnotation.getDetails().containsKey(annotationKey);
+ }
+
+ return true;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/provider/CSSAppearanceProvider.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/provider/CSSAppearanceProvider.java
new file mode 100644
index 00000000000..ceb08f4a7af
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/provider/CSSAppearanceProvider.java
@@ -0,0 +1,47 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.provider;
+
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.papyrus.infra.emf.appearance.style.AnnotationStyleProvider;
+
+
+public class CSSAppearanceProvider extends AnnotationStyleProvider {
+
+ @Override
+ public boolean showElementIcon(EModelElement modelElement) {
+ boolean result = super.showElementIcon(modelElement);
+ if(!result && modelElement instanceof CustomStyle) {
+ return ((CustomStyle)modelElement).showElementIcon();
+ }
+ return result;
+ }
+
+ @Override
+ public int getQualifiedNameDepth(EModelElement modelElement) {
+ int result = super.getQualifiedNameDepth(modelElement);
+ if(result == 1000 && modelElement instanceof CustomStyle) {
+ return ((CustomStyle)modelElement).getQualifiedNameDepth();
+ }
+ return result;
+ }
+
+ @Override
+ public boolean showShadow(EModelElement modelElement) {
+ boolean result = super.showShadow(modelElement);
+ if(!result && modelElement instanceof CustomStyle) {
+ return ((CustomStyle)modelElement).showShadow();
+ }
+ return result;
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/provider/CSSCustomStyleDelegate.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/provider/CSSCustomStyleDelegate.java
new file mode 100644
index 00000000000..e1e83ef1097
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/provider/CSSCustomStyleDelegate.java
@@ -0,0 +1,83 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.provider;
+
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.helper.StringHelper;
+import org.w3c.dom.Element;
+import org.w3c.dom.css.CSSValue;
+
+@SuppressWarnings("restriction")
+public class CSSCustomStyleDelegate implements CustomStyle {
+
+ private View view;
+
+ private ExtendedCSSEngine engine;
+
+ private Element element;
+
+ private static final String NONE = "none";
+
+ private static final String FULL = "full";
+
+ private static int NONE_VALUE = 1000;
+
+ private static int FULL_VALUE = 0;
+
+ public CSSCustomStyleDelegate(View view, ExtendedCSSEngine engine) {
+ this.view = view;
+ this.engine = engine;
+ this.element = engine.getElement(this.view);
+ }
+
+ public boolean showElementIcon() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "elementIcon");
+ if(cssValue == null) {
+ return false;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+
+ public int getQualifiedNameDepth() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "qualifiedNameDepth");
+ if(cssValue == null) {
+ return NONE_VALUE;
+ }
+
+ String cssText = cssValue.getCssText();
+
+ if(StringHelper.equals(FULL, cssText)) {
+ return FULL_VALUE;
+ }
+
+ if(StringHelper.equals(NONE, cssText)) {
+ return NONE_VALUE;
+ }
+
+ try {
+ int value = Integer.parseInt(cssText);
+ return value > 0 ? -value : value;
+ } catch (NumberFormatException ex) {
+ engine.handleExceptions(ex);
+ return NONE_VALUE;
+ }
+ }
+
+ public boolean showShadow() {
+ CSSValue cssValue = engine.retrievePropertyValue(element, "shadow");
+ if(cssValue == null) {
+ return false;
+ }
+ return (Boolean)engine.convert(cssValue, Boolean.class, null);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/provider/CustomStyle.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/provider/CustomStyle.java
new file mode 100644
index 00000000000..6674a5033c2
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/provider/CustomStyle.java
@@ -0,0 +1,22 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.provider;
+
+
+public interface CustomStyle {
+
+ public boolean showElementIcon();
+
+ public int getQualifiedNameDepth();
+
+ public boolean showShadow();
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/resource/CSSNotationModel.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/resource/CSSNotationModel.java
new file mode 100644
index 00000000000..499dd44c228
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/resource/CSSNotationModel.java
@@ -0,0 +1,26 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.resource;
+
+import org.eclipse.papyrus.infra.core.resource.ModelSet;
+import org.eclipse.papyrus.infra.core.resource.notation.NotationModel;
+
+public class CSSNotationModel extends NotationModel {
+
+ @Override
+ public void init(ModelSet modelManager) {
+ super.init(modelManager);
+
+ CSSNotationResourceFactory factory = new CSSNotationResourceFactory();
+ getResourceSet().getResourceFactoryRegistry().getExtensionToFactoryMap().put(NOTATION_FILE_EXTENSION, factory);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/resource/CSSNotationResource.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/resource/CSSNotationResource.java
new file mode 100644
index 00000000000..3c4bd5aa3cb
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/resource/CSSNotationResource.java
@@ -0,0 +1,33 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.resource;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.gmf.runtime.emf.core.resources.GMFResource;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ExtendedCSSEngine;
+import org.eclipse.papyrus.infra.gmfdiag.css.engine.ModelCSSEngine;
+
+
+public class CSSNotationResource extends GMFResource {
+
+ private ExtendedCSSEngine engine;
+
+ public CSSNotationResource(URI uri) {
+ super(uri);
+ engine = new ModelCSSEngine(this);
+ }
+
+ public ExtendedCSSEngine getEngine() {
+ return engine;
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/resource/CSSNotationResourceFactory.java b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/resource/CSSNotationResourceFactory.java
new file mode 100644
index 00000000000..4d6a38f38a8
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.infra.gmfdiag.css/src/org/eclipse/papyrus/infra/gmfdiag/css/resource/CSSNotationResourceFactory.java
@@ -0,0 +1,37 @@
+/*****************************************************************************
+ * 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.css.resource;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.xmi.XMIResource;
+import org.eclipse.gmf.runtime.emf.core.internal.util.EMFCoreConstants;
+import org.eclipse.gmf.runtime.emf.core.resources.GMFResourceFactory;
+
+
+public class CSSNotationResourceFactory extends GMFResourceFactory {
+
+ @Override
+ public Resource createResource(URI uri) {
+
+ XMIResource resource = new CSSNotationResource(uri);
+
+ resource.getDefaultLoadOptions().putAll(GMFResourceFactory.getDefaultLoadOptions());
+ resource.getDefaultSaveOptions().putAll(GMFResourceFactory.getDefaultSaveOptions());
+
+ if(!resource.getEncoding().equals(EMFCoreConstants.XMI_ENCODING)) {
+ resource.setEncoding(EMFCoreConstants.XMI_ENCODING);
+ }
+
+ return resource;
+ }
+}

Back to the top