Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRalf Mollik2017-08-28 15:34:17 +0000
committerRalf Mollik2017-08-28 15:34:17 +0000
commit563414e9fd75dc56b6c85bba9afdee3d894742a3 (patch)
tree8cfcda15294f22b108014e155c92d28fcd05da48
downloadorg.eclipse.osbp.mobile.vaadin-563414e9fd75dc56b6c85bba9afdee3d894742a3.tar.gz
org.eclipse.osbp.mobile.vaadin-563414e9fd75dc56b6c85bba9afdee3d894742a3.tar.xz
org.eclipse.osbp.mobile.vaadin-563414e9fd75dc56b6c85bba9afdee3d894742a3.zip
parallel ip - initial checkin
Signed-off-by: Ralf Mollik <ramollik@compex-commerce.com>
-rw-r--r--.project22
-rw-r--r--LICENSE203
-rw-r--r--LICENSE.txt161
-rw-r--r--README.md10
-rw-r--r--about.html28
-rw-r--r--jenkins.build.config.xml24
-rw-r--r--license-info.txt6
-rw-r--r--notice.html107
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/.checkstyle7
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/.project45
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/LICENSE.txt161
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/META-INF/MANIFEST.MF20
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/about.html28
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/about.ini17
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/about.mappings6
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/about.properties26
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/build.properties10
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/epl-v10.html259
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/license.html164
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/pom.xml24
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/src/org/eclipse/osbp/mobile/vaadin/ecview/api/AbstractMobileView.java292
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/src/org/eclipse/osbp/mobile/vaadin/ecview/api/IMobileUiParticipant.java60
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.api/src/org/eclipse/osbp/mobile/vaadin/ecview/api/IMobileUiParticipantHandle.java43
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/.checkstyle7
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/.project56
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/LICENSE.txt161
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/META-INF/MANIFEST.MF35
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/OSGI-INF/editPartManager.xml8
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.html28
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.ini17
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.mappings6
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.properties26
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/build.properties9
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/epl-v10.html259
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/license.html164
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/pom.xml28
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/EditpartManager.java122
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/HorizontalButtonGroupEditpart.java25
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/MobileSearchPanelEditpart.java48
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/MobileTabEditpart.java199
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/MobileTabSheetEditpart.java293
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationBarButtonEditpart.java30
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationButtonEditpart.java35
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationCommandEditpart.java113
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationPageEditpart.java361
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationRootEditpart.java24
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/SwitchEditpart.java23
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/VerticalComponentGroupEditpart.java25
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/.checkstyle7
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/.project51
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/LICENSE.txt161
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/META-INF/MANIFEST.MF22
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.html28
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.ini17
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.mappings6
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.properties26
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/build.properties10
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/epl-v10.html259
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/license.html164
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/pom.xml24
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IHorizontalButtonGroupEditpart.java20
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IMobileSearchPanelEditpart.java21
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IMobileTabEditpart.java116
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IMobileTabSheetEditpart.java70
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationBarButtonEditpart.java20
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationButtonEditpart.java28
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationCommandEditpart.java20
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationHandler.java42
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationPageEditpart.java47
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationRootEditpart.java20
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/ISwitchEditpart.java17
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IVerticalComponentGroupEditpart.java20
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/presentation/IMobileTabPresentation.java26
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/presentation/IMobileTabSheetPresentation.java96
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/presentation/INavigationPagePresentation.java106
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/.project51
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/LICENSE.txt161
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/META-INF/MANIFEST.MF37
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/about.html28
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/about.ini17
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/about.mappings6
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/about.properties26
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/build.properties13
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/epl-v10.html259
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/license.html164
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/model/vaadinmobile.ecore89
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/model/vaadinmobile.genmodel13
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/plugin.properties2
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/plugin.xml17
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/pom.xml27
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMHorizontalButtonGroup.java26
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationBarButton.java99
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationButton.java122
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationCommand.java123
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationHandler.java26
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationPage.java288
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationPageCellStyle.java91
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationRoot.java26
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMSearchPanel.java168
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMSwitch.java86
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMTab.java162
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMTabSheet.java52
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMVerticalComponentGroup.java26
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VaadinMobileFactory.java149
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VaadinMobilePackage.java3055
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMHorizontalButtonGroupImpl.java52
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationBarButtonImpl.java494
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationButtonImpl.java434
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationCommandImpl.java628
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationPageCellStyleImpl.java265
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationPageImpl.java705
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationRootImpl.java52
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMSearchPanelImpl.java598
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMSwitchImpl.java315
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMTabImpl.java890
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMTabSheetImpl.java181
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMVerticalComponentGroupImpl.java49
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VaadinMobileFactoryImpl.java244
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VaadinMobilePackageImpl.java871
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/util/VaadinMobileAdapterFactory.java607
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/util/VaadinMobileSwitch.java671
-rw-r--r--org.eclipse.osbp.mobile.vaadin.ecview.model/text/description.txt69
-rw-r--r--org.eclipse.osbp.mobile.vaadin.feature.ecview/.project34
-rw-r--r--org.eclipse.osbp.mobile.vaadin.feature.ecview/LICENSE.txt161
-rw-r--r--org.eclipse.osbp.mobile.vaadin.feature.ecview/build.properties8
-rw-r--r--org.eclipse.osbp.mobile.vaadin.feature.ecview/epl-v10.html259
-rw-r--r--org.eclipse.osbp.mobile.vaadin.feature.ecview/feature.properties169
-rw-r--r--org.eclipse.osbp.mobile.vaadin.feature.ecview/feature.xml58
-rw-r--r--org.eclipse.osbp.mobile.vaadin.feature.ecview/license-epl-v10.html259
-rw-r--r--org.eclipse.osbp.mobile.vaadin.feature.ecview/license.html1522
-rw-r--r--org.eclipse.osbp.mobile.vaadin.feature.ecview/pom.xml73
-rw-r--r--org.eclipse.osbp.mobile.vaadin.feature.ecview/src/main/javadoc/README.txt1
-rw-r--r--org.eclipse.osbp.mobile.vaadin.feature.ecview/src/overview.html11
-rw-r--r--pom.xml142
134 files changed, 20500 insertions, 0 deletions
diff --git a/.project b/.project
new file mode 100644
index 0000000..8934d59
--- /dev/null
+++ b/.project
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.osbp.mobile.vaadin.aggregator</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.sonarlint.eclipse.core.sonarlintBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ </natures>
+</projectDescription>
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..f735bee
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,203 @@
+Eclipse Public License - v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC
+LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM
+CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+a) in the case of the initial Contributor, the initial code and documentation
+ distributed under this Agreement, and
+b) in the case of each subsequent Contributor:
+ i) changes to the Program, and
+ ii) additions to the Program;
+
+ where such changes and/or additions to the Program originate from and are
+ distributed by that particular Contributor. A Contribution 'originates'
+ from a Contributor if it was added to the Program by such Contributor
+ itself or anyone acting on such Contributor's behalf. Contributions do not
+ include additions to the Program which: (i) are separate modules of
+ software distributed in conjunction with the Program under their own
+ license agreement, and (ii) are not derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents" mean patent claims licensable by a Contributor which are
+necessarily infringed by the use or sale of its Contribution alone or when
+combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this
+Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement,
+including all Contributors.
+
+2. GRANT OF RIGHTS
+ a) Subject to the terms of this Agreement, each Contributor hereby grants
+ Recipient a non-exclusive, worldwide, royalty-free copyright license to
+ reproduce, prepare derivative works of, publicly display, publicly
+ perform, distribute and sublicense the Contribution of such Contributor,
+ if any, and such derivative works, in source code and object code form.
+ b) Subject to the terms of this Agreement, each Contributor hereby grants
+ Recipient a non-exclusive, worldwide, royalty-free patent license under
+ Licensed Patents to make, use, sell, offer to sell, import and otherwise
+ transfer the Contribution of such Contributor, if any, in source code and
+ object code form. This patent license shall apply to the combination of
+ the Contribution and the Program if, at the time the Contribution is
+ added by the Contributor, such addition of the Contribution causes such
+ combination to be covered by the Licensed Patents. The patent license
+ shall not apply to any other combinations which include the Contribution.
+ No hardware per se is licensed hereunder.
+ c) Recipient understands that although each Contributor grants the licenses
+ to its Contributions set forth herein, no assurances are provided by any
+ Contributor that the Program does not infringe the patent or other
+ intellectual property rights of any other entity. Each Contributor
+ disclaims any liability to Recipient for claims brought by any other
+ entity based on infringement of intellectual property rights or
+ otherwise. As a condition to exercising the rights and licenses granted
+ hereunder, each Recipient hereby assumes sole responsibility to secure
+ any other intellectual property rights needed, if any. For example, if a
+ third party patent license is required to allow Recipient to distribute
+ the Program, it is Recipient's responsibility to acquire that license
+ before distributing the Program.
+ d) Each Contributor represents that to its knowledge it has sufficient
+ copyright rights in its Contribution, if any, to grant the copyright
+ license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under
+its own license agreement, provided that:
+
+ a) it complies with the terms and conditions of this Agreement; and
+ b) its license agreement:
+ i) effectively disclaims on behalf of all Contributors all warranties
+ and conditions, express and implied, including warranties or
+ conditions of title and non-infringement, and implied warranties or
+ conditions of merchantability and fitness for a particular purpose;
+ ii) effectively excludes on behalf of all Contributors all liability for
+ damages, including direct, indirect, special, incidental and
+ consequential damages, such as lost profits;
+ iii) states that any provisions which differ from this Agreement are
+ offered by that Contributor alone and not by any other party; and
+ iv) states that source code for the Program is available from such
+ Contributor, and informs licensees how to obtain it in a reasonable
+ manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+ a) it must be made available under this Agreement; and
+ b) a copy of this Agreement must be included with each copy of the Program.
+ Contributors may not remove or alter any copyright notices contained
+ within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution,
+if
+any, in a manner that reasonably allows subsequent Recipients to identify the
+originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with
+respect to end users, business partners and the like. While this license is
+intended to facilitate the commercial use of the Program, the Contributor who
+includes the Program in a commercial product offering should do so in a manner
+which does not create potential liability for other Contributors. Therefore,
+if a Contributor includes the Program in a commercial product offering, such
+Contributor ("Commercial Contributor") hereby agrees to defend and indemnify
+every other Contributor ("Indemnified Contributor") against any losses,
+damages and costs (collectively "Losses") arising from claims, lawsuits and
+other legal actions brought by a third party against the Indemnified
+Contributor to the extent caused by the acts or omissions of such Commercial
+Contributor in connection with its distribution of the Program in a commercial
+product offering. The obligations in this section do not apply to any claims
+or Losses relating to any actual or alleged intellectual property
+infringement. In order to qualify, an Indemnified Contributor must:
+a) promptly notify the Commercial Contributor in writing of such claim, and
+b) allow the Commercial Contributor to control, and cooperate with the
+Commercial Contributor in, the defense and any related settlement
+negotiations. The Indemnified Contributor may participate in any such claim at
+its own expense.
+
+For example, a Contributor might include the Program in a commercial product
+offering, Product X. That Contributor is then a Commercial Contributor. If
+that Commercial Contributor then makes performance claims, or offers
+warranties related to Product X, those performance claims and warranties are
+such Commercial Contributor's responsibility alone. Under this section, the
+Commercial Contributor would have to defend claims against the other
+Contributors related to those performance claims and warranties, and if a
+court requires any other Contributor to pay any damages as a result, the
+Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR
+IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE,
+NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each
+Recipient is solely responsible for determining the appropriateness of using
+and distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to the
+risks and costs of program errors, compliance with applicable laws, damage to
+or loss of data, programs or equipment, and unavailability or interruption of
+operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY
+CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION
+LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE
+EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY
+OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under
+applicable law, it shall not affect the validity or enforceability of the
+remainder of the terms of this Agreement, and without further action by the
+parties hereto, such provision shall be reformed to the minimum extent
+necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a
+cross-claim or counterclaim in a lawsuit) alleging that the Program itself
+(excluding combinations of the Program with other software or hardware)
+infringes such Recipient's patent(s), then such Recipient's rights granted
+under Section 2(b) shall terminate as of the date such litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it fails to
+comply with any of the material terms or conditions of this Agreement and does
+not cure such failure in a reasonable period of time after becoming aware of
+such noncompliance. If all Recipient's rights under this Agreement terminate,
+Recipient agrees to cease use and distribution of the Program as soon as
+reasonably practicable. However, Recipient's obligations under this Agreement
+and any licenses granted by Recipient relating to the Program shall continue
+and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in
+order to avoid inconsistency the Agreement is copyrighted and may only be
+modified in the following manner. The Agreement Steward reserves the right to
+publish new versions (including revisions) of this Agreement from time to
+time. No one other than the Agreement Steward has the right to modify this
+Agreement. The Eclipse Foundation is the initial Agreement Steward. The
+Eclipse Foundation may assign the responsibility to serve as the Agreement
+Steward to a suitable separate entity. Each new version of the Agreement will
+be given a distinguishing version number. The Program (including
+Contributions) may always be distributed subject to the version of the
+Agreement under which it was received. In addition, after a new version of the
+Agreement is published, Contributor may elect to distribute the Program
+(including its Contributions) under the new version. Except as expressly
+stated in Sections 2(a) and 2(b) above, Recipient receives no rights or
+licenses to the intellectual property of any Contributor under this Agreement,
+whether expressly, by implication, estoppel or otherwise. All rights in the
+Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the
+intellectual property laws of the United States of America. No party to this
+Agreement will bring a legal action under this Agreement more than one year
+after the cause of action arose. Each party waives its rights to a jury trial in
+any resulting litigation.
diff --git a/LICENSE.txt b/LICENSE.txt
new file mode 100644
index 0000000..ff42ad4
--- /dev/null
+++ b/LICENSE.txt
@@ -0,0 +1,161 @@
+Eclipse Public License -v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION
+OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor.
+A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone
+acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate
+modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not
+derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of
+its Contribution alone or when combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute
+and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code
+form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the
+Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the
+combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such
+addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not
+apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no
+assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity
+based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property
+rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the
+Program, it is Recipient's responsibility to acquire that license before distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to
+grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including
+warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and
+fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any
+other party; and
+
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it
+in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and
+the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes
+the Program in a commercial product offering should do so in a manner which does not create potential liability for
+other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions
+brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such
+Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual
+property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the
+Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may
+ participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is
+then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties
+related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone.
+Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to
+those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result,
+the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR
+CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE,
+NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for
+determining the appropriateness of using and distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance
+with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS),
+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such
+provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such
+Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such
+litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such
+noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution
+of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses
+ granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement
+is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish
+new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the
+right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the
+Agreement will be given a distinguishing version number. The Program (including Contributions) may always be
+distributed subject to the version of the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the
+new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States
+of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause
+of action arose. Each party waives its rights to a jury trial in any resulting litigation. \ No newline at end of file
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..3efb908
--- /dev/null
+++ b/README.md
@@ -0,0 +1,10 @@
+org.eclipse.osbp.mobile.vaadin
+==============================
+
+ECView layer for vaadin mobile application
+
+This software is available under the Eclipse Public License -v 1.0
+
+
+ATTENTION: You are not allowed to use that repo, unless you hold a valid CVAL3 license from vaadin.com.
+For details see: https://vaadin.com/add-ons/touchkit
diff --git a/about.html b/about.html
new file mode 100644
index 0000000..64c0598
--- /dev/null
+++ b/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>June 1, 2016</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/jenkins.build.config.xml b/jenkins.build.config.xml
new file mode 100644
index 0000000..d38c2bf
--- /dev/null
+++ b/jenkins.build.config.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--#======================================================================= -->
+<!--# Copyright (c) 2016 - Loetz GmbH&Co.KG -->
+<!--# 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: -->
+<!--# Christophe Loetz (Loetz GmbH&Co.KG) - initial API and implementation -->
+<!--#======================================================================= -->
+<!--# Module specific parameters for the Jenkins Job -->
+<!--#======================================================================= -->
+
+<jenkins>
+ <!-- DO NOT EDIT BELOW THIS LINE -->
+ <jenkins.build.dependencies>
+ <jenkins.build.dependency>org.eclipse.osbp.dsl</jenkins.build.dependency>
+ <jenkins.build.dependency>org.eclipse.osbp.ecview.core</jenkins.build.dependency>
+ <jenkins.build.dependency>org.eclipse.osbp.runtime</jenkins.build.dependency>
+ <jenkins.build.dependency>org.eclipse.osbp.runtime.web</jenkins.build.dependency>
+ <jenkins.build.dependency>org.eclipse.osbp.utils.themes.ui</jenkins.build.dependency>
+ </jenkins.build.dependencies>
+</jenkins>
diff --git a/license-info.txt b/license-info.txt
new file mode 100644
index 0000000..2d3765e
--- /dev/null
+++ b/license-info.txt
@@ -0,0 +1,6 @@
+This repository uses Vaadin touchkit addon which is licensed under the CVAL 3.0 license. You are not permitted to use the code contained in this repo without a valid CVAL 3.0 license.
+
+https://vaadin.com/directory#addon/vaadin-touchkit
+
+Code implemented by Lunifera DOT org project is licensed under the EPL v1.
+
diff --git a/notice.html b/notice.html
new file mode 100644
index 0000000..c3d34c3
--- /dev/null
+++ b/notice.html
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!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>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>April 9, 2014</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+ (COLLECTIVELY &quot;CONTENT&quot;). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
+ CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE
+ OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
+ NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
+ CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation 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 provided with this Content and is also 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>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
+ repository (&quot;Repository&quot;) in software modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
+
+<ul>
+ <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
+ <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
+ <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material. Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;. Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
+ and/or Fragments associated with that Feature.</li>
+ <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
+Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;). Abouts and Feature Licenses may be located in any directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+ <li>The top-level (root) directory</li>
+ <li>Plug-in and Fragment directories</li>
+ <li>Inside Plug-ins and Fragments packaged as JARs</li>
+ <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
+ <li>Feature directories</li>
+</ul>
+
+<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license (&quot;Feature Update License&quot;) during the
+installation process. If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
+inform you where you can locate them. Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
+that directory.</p>
+
+<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE
+OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
+
+<ul>
+ <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+ <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+ <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+ <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+ <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License is provided, please
+contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
+ Update Manager (&quot;Provisioning Technology&quot;) for the purpose of allowing users to install software, documentation, information and/or
+ other materials (collectively &quot;Installable Software&quot;). This capability is provided with the intent of allowing such users to
+ install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a
+ href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+ (&quot;Specification&quot;).</p>
+
+<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the
+ applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology
+ in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the
+ Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p>
+
+<ol>
+ <li>A series of actions may occur (&quot;Provisioning Process&quot;) in which a user may execute the Provisioning Technology
+ on a machine (&quot;Target Machine&quot;) with the intent of installing, extending or updating the functionality of an Eclipse-based
+ product.</li>
+ <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be
+ accessed and copied to the Target Machine.</li>
+ <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
+ Software (&quot;Installable Software Agreement&quot;) and such Installable Software Agreement shall be accessed from the Target
+ Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern
+ the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such
+ indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
+ another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
+ possession, or use, and re-export of encryption software, to see if this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+</body>
+</html>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/.checkstyle b/org.eclipse.osbp.mobile.vaadin.ecview.api/.checkstyle
new file mode 100644
index 0000000..2f2667a
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/.checkstyle
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <fileset name="all" enabled="true" check-config-name="emfstoreStyle" local="false">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ </fileset>
+</fileset-config>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/.project b/org.eclipse.osbp.mobile.vaadin.ecview.api/.project
new file mode 100644
index 0000000..d8eba45
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/.project
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.osbp.mobile.vaadin.ecview.api</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>
+ <buildCommand>
+ <name>org.eclipse.babel.editor.rbeBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.sonarlint.eclipse.core.sonarlintBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.babel.editor.rbeNature</nature>
+ </natures>
+</projectDescription>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/LICENSE.txt b/org.eclipse.osbp.mobile.vaadin.ecview.api/LICENSE.txt
new file mode 100644
index 0000000..ff42ad4
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/LICENSE.txt
@@ -0,0 +1,161 @@
+Eclipse Public License -v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION
+OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor.
+A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone
+acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate
+modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not
+derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of
+its Contribution alone or when combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute
+and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code
+form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the
+Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the
+combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such
+addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not
+apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no
+assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity
+based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property
+rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the
+Program, it is Recipient's responsibility to acquire that license before distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to
+grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including
+warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and
+fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any
+other party; and
+
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it
+in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and
+the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes
+the Program in a commercial product offering should do so in a manner which does not create potential liability for
+other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions
+brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such
+Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual
+property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the
+Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may
+ participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is
+then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties
+related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone.
+Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to
+those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result,
+the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR
+CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE,
+NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for
+determining the appropriateness of using and distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance
+with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS),
+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such
+provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such
+Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such
+litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such
+noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution
+of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses
+ granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement
+is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish
+new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the
+right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the
+Agreement will be given a distinguishing version number. The Program (including Contributions) may always be
+distributed subject to the version of the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the
+new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States
+of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause
+of action arose. Each party waives its rights to a jury trial in any resulting litigation. \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/META-INF/MANIFEST.MF b/org.eclipse.osbp.mobile.vaadin.ecview.api/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..3c584d6
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/META-INF/MANIFEST.MF
@@ -0,0 +1,20 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: org.eclipse.osbp.mobile.vaadin.ecview.api
+Bundle-SymbolicName: org.eclipse.osbp.mobile.vaadin.ecview.api
+Bundle-Vendor: Eclipse OSBP
+Bundle-Version: 0.9.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.osbp.mobile.vaadin.ecview.api;version="0.9.0"
+Require-Bundle: com.vaadin.server;bundle-version="7.5.7",
+ com.vaadin.shared;bundle-version="7.5.7",
+ org.jsoup;bundle-version="1.8.3",
+ org.eclipse.osbp.dsl.dto.lib,
+ org.eclipse.osbp.ecview.core.common,
+ org.eclipse.emf.common,
+ org.eclipse.osbp.mobile.vaadin.ecview.model,
+ org.eclipse.osbp.runtime.web.ecview.presentation.vaadin
+Import-Package: org.eclipse.osbp.utils.themes.ui;version="0.9.0",
+ org.osgi.framework,
+ org.osgi.util.tracker;version="1.5.1"
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/about.html b/org.eclipse.osbp.mobile.vaadin.ecview.api/about.html
new file mode 100644
index 0000000..64c0598
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/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>June 1, 2016</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/org.eclipse.osbp.mobile.vaadin.ecview.api/about.ini b/org.eclipse.osbp.mobile.vaadin.ecview.api/about.ini
new file mode 100644
index 0000000..7df671f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/about.ini
@@ -0,0 +1,17 @@
+# about.ini
+# contains information about a feature
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# "%key" are externalized strings defined in about.properties
+# This file does not need to be translated.
+
+# Property "aboutText" contains blurb for "About" dialog (translated)
+aboutText=%featureText
+
+# Property "featureImage" contains path to feature image (32x32)
+featureImage=
+
+# Property "appName" contains name of the application (translated)
+appName=%featureName
+
+# Property "welcomePage" contains path to welcome page (special XML-based format)
+welcomePage=
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/about.mappings b/org.eclipse.osbp.mobile.vaadin.ecview.api/about.mappings
new file mode 100644
index 0000000..4511a0a
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/about.mappings
@@ -0,0 +1,6 @@
+# about.mappings
+# contains fill-ins for about.properties
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# This file does not need to be translated.
+
+0=qualifier
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/about.properties b/org.eclipse.osbp.mobile.vaadin.ecview.api/about.properties
new file mode 100644
index 0000000..6436c4f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/about.properties
@@ -0,0 +1,26 @@
+#
+# Copyright (c) 2012, 2016 - Loetz GmbH&Co.KG (Heidelberg)
+# 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:
+# Christophe Loetz (Loetz GmbH&Co.KG) - initial API and implementation
+#
+
+# NLS_MESSAGEFORMAT_VAR
+
+featureName=org.eclipse.osbp.mobile.vaadin.ecview.editparts
+
+################ blurb property ####################################
+featureText=\
+Copyright (c) 2012-2016 - Loetz GmbH&Co.KG \n\
+All rights reserved. This program and the accompanying materials\n\
+are made available under the terms of the Eclipse Public License v1.0\n\
+which accompanies this distribution, and is available at\n\
+http://www.eclipse.org/legal/epl-v10.html\n\
+\n\
+Contributors:\n\
+ Christophe Loetz (Loetz GmbH&Co.KG) - initial implementation\n
+################ end of blurb property ####################################
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/build.properties b/org.eclipse.osbp.mobile.vaadin.ecview.api/build.properties
new file mode 100644
index 0000000..6509591
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/build.properties
@@ -0,0 +1,10 @@
+source.. = src/
+bin.includes = about.properties, about.mappings, about.ini, about.html, META-INF/,\
+ .,\
+ LICENSE.txt,\
+ epl-v10.html,\
+ license.html
+output.. = target/classes
+src.includes = about.properties, about.mappings, about.ini, about.html, epl-v10.html,\
+ license.html,\
+ LICENSE.txt
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/epl-v10.html b/org.eclipse.osbp.mobile.vaadin.ecview.api/epl-v10.html
new file mode 100644
index 0000000..b398acc
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/epl-v10.html
@@ -0,0 +1,259 @@
+<!--?xml version="1.0" encoding="ISO-8859-1" ?-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Eclipse Public License - Version 1.0</title>
+<style type="text/css">
+ body {
+ size: 8.5in 11.0in;
+ margin: 0.25in 0.5in 0.25in 0.5in;
+ tab-interval: 0.5in;
+ }
+ p {
+ margin-left: auto;
+ margin-top: 0.5em;
+ margin-bottom: 0.5em;
+ }
+ p.list {
+ margin-left: 0.5in;
+ margin-top: 0.05em;
+ margin-bottom: 0.05em;
+ }
+ </style>
+
+</head>
+
+<body lang="EN-US">
+
+<h2>Eclipse Public License - v 1.0</h2>
+
+<p>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
+PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR
+DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS
+AGREEMENT.</p>
+
+<p><b>1. DEFINITIONS</b></p>
+
+<p>"Contribution" means:</p>
+
+<p class="list">a) in the case of the initial Contributor, the initial
+code and documentation distributed under this Agreement, and</p>
+<p class="list">b) in the case of each subsequent Contributor:</p>
+<p class="list">i) changes to the Program, and</p>
+<p class="list">ii) additions to the Program;</p>
+<p class="list">where such changes and/or additions to the Program
+originate from and are distributed by that particular Contributor. A
+Contribution 'originates' from a Contributor if it was added to the
+Program by such Contributor itself or anyone acting on such
+Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in
+conjunction with the Program under their own license agreement, and (ii)
+are not derivative works of the Program.</p>
+
+<p>"Contributor" means any person or entity that distributes
+the Program.</p>
+
+<p>"Licensed Patents" mean patent claims licensable by a
+Contributor which are necessarily infringed by the use or sale of its
+Contribution alone or when combined with the Program.</p>
+
+<p>"Program" means the Contributions distributed in accordance
+with this Agreement.</p>
+
+<p>"Recipient" means anyone who receives the Program under
+this Agreement, including all Contributors.</p>
+
+<p><b>2. GRANT OF RIGHTS</b></p>
+
+<p class="list">a) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works
+of, publicly display, publicly perform, distribute and sublicense the
+Contribution of such Contributor, if any, and such derivative works, in
+source code and object code form.</p>
+
+<p class="list">b) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell,
+offer to sell, import and otherwise transfer the Contribution of such
+Contributor, if any, in source code and object code form. This patent
+license shall apply to the combination of the Contribution and the
+Program if, at the time the Contribution is added by the Contributor,
+such addition of the Contribution causes such combination to be covered
+by the Licensed Patents. The patent license shall not apply to any other
+combinations which include the Contribution. No hardware per se is
+licensed hereunder.</p>
+
+<p class="list">c) Recipient understands that although each Contributor
+grants the licenses to its Contributions set forth herein, no assurances
+are provided by any Contributor that the Program does not infringe the
+patent or other intellectual property rights of any other entity. Each
+Contributor disclaims any liability to Recipient for claims brought by
+any other entity based on infringement of intellectual property rights
+or otherwise. As a condition to exercising the rights and licenses
+granted hereunder, each Recipient hereby assumes sole responsibility to
+secure any other intellectual property rights needed, if any. For
+example, if a third party patent license is required to allow Recipient
+to distribute the Program, it is Recipient's responsibility to acquire
+that license before distributing the Program.</p>
+
+<p class="list">d) Each Contributor represents that to its knowledge it
+has sufficient copyright rights in its Contribution, if any, to grant
+the copyright license set forth in this Agreement.</p>
+
+<p><b>3. REQUIREMENTS</b></p>
+
+<p>A Contributor may choose to distribute the Program in object code
+form under its own license agreement, provided that:</p>
+
+<p class="list">a) it complies with the terms and conditions of this
+Agreement; and</p>
+
+<p class="list">b) its license agreement:</p>
+
+<p class="list">i) effectively disclaims on behalf of all Contributors
+all warranties and conditions, express and implied, including warranties
+or conditions of title and non-infringement, and implied warranties or
+conditions of merchantability and fitness for a particular purpose;</p>
+
+<p class="list">ii) effectively excludes on behalf of all Contributors
+all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;</p>
+
+<p class="list">iii) states that any provisions which differ from this
+Agreement are offered by that Contributor alone and not by any other
+party; and</p>
+
+<p class="list">iv) states that source code for the Program is available
+from such Contributor, and informs licensees how to obtain it in a
+reasonable manner on or through a medium customarily used for software
+exchange.</p>
+
+<p>When the Program is made available in source code form:</p>
+
+<p class="list">a) it must be made available under this Agreement; and</p>
+
+<p class="list">b) a copy of this Agreement must be included with each
+copy of the Program.</p>
+
+<p>Contributors may not remove or alter any copyright notices contained
+within the Program.</p>
+
+<p>Each Contributor must identify itself as the originator of its
+Contribution, if any, in a manner that reasonably allows subsequent
+Recipients to identify the originator of the Contribution.</p>
+
+<p><b>4. COMMERCIAL DISTRIBUTION</b></p>
+
+<p>Commercial distributors of software may accept certain
+responsibilities with respect to end users, business partners and the
+like. While this license is intended to facilitate the commercial use of
+the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create
+potential liability for other Contributors. Therefore, if a Contributor
+includes the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and
+indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses")
+arising from claims, lawsuits and other legal actions brought by a third
+party against the Indemnified Contributor to the extent caused by the
+acts or omissions of such Commercial Contributor in connection with its
+distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In
+order to qualify, an Indemnified Contributor must: a) promptly notify
+the Commercial Contributor in writing of such claim, and b) allow the
+Commercial Contributor to control, and cooperate with the Commercial
+Contributor in, the defense and any related settlement negotiations. The
+Indemnified Contributor may participate in any such claim at its own
+expense.</p>
+
+<p>For example, a Contributor might include the Program in a commercial
+product offering, Product X. That Contributor is then a Commercial
+Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance
+claims and warranties are such Commercial Contributor's responsibility
+alone. Under this section, the Commercial Contributor would have to
+defend claims against the other Contributors related to those
+performance claims and warranties, and if a court requires any other
+Contributor to pay any damages as a result, the Commercial Contributor
+must pay those damages.</p>
+
+<p><b>5. NO WARRANTY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
+PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION,
+ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
+OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and
+distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to
+the risks and costs of program errors, compliance with applicable laws,
+damage to or loss of data, programs or equipment, and unavailability or
+interruption of operations.</p>
+
+<p><b>6. DISCLAIMER OF LIABILITY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT
+NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
+WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
+DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p>
+
+<p><b>7. GENERAL</b></p>
+
+<p>If any provision of this Agreement is invalid or unenforceable under
+applicable law, it shall not affect the validity or enforceability of
+the remainder of the terms of this Agreement, and without further action
+by the parties hereto, such provision shall be reformed to the minimum
+extent necessary to make such provision valid and enforceable.</p>
+
+<p>If Recipient institutes patent litigation against any entity
+(including a cross-claim or counterclaim in a lawsuit) alleging that the
+Program itself (excluding combinations of the Program with other
+software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the
+date such litigation is filed.</p>
+
+<p>All Recipient's rights under this Agreement shall terminate if it
+fails to comply with any of the material terms or conditions of this
+Agreement and does not cure such failure in a reasonable period of time
+after becoming aware of such noncompliance. If all Recipient's rights
+under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive.</p>
+
+<p>Everyone is permitted to copy and distribute copies of this
+Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The
+Agreement Steward reserves the right to publish new versions (including
+revisions) of this Agreement from time to time. No one other than the
+Agreement Steward has the right to modify this Agreement. The Eclipse
+Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a
+suitable separate entity. Each new version of the Agreement will be
+given a distinguishing version number. The Program (including
+Contributions) may always be distributed subject to the version of the
+Agreement under which it was received. In addition, after a new version
+of the Agreement is published, Contributor may elect to distribute the
+Program (including its Contributions) under the new version. Except as
+expressly stated in Sections 2(a) and 2(b) above, Recipient receives no
+rights or licenses to the intellectual property of any Contributor under
+this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this
+Agreement are reserved.</p>
+
+<p>This Agreement is governed by the laws of the State of New York and
+the intellectual property laws of the United States of America. No party
+to this Agreement will bring a legal action under this Agreement more
+than one year after the cause of action arose. Each party waives its
+rights to a jury trial in any resulting litigation.</p>
+
+
+
+</body></html> \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/license.html b/org.eclipse.osbp.mobile.vaadin.ecview.api/license.html
new file mode 100644
index 0000000..6e579a5
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/license.html
@@ -0,0 +1,164 @@
+<!--?xml version="1.0" encoding="ISO-8859-1" ?-->
+<!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>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>February 1, 2011</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+ (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
+ CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE
+ OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
+ NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
+ CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>Unless otherwise indicated, all Content made available by the Eclipse
+ Foundation is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0
+ ("EPL"). A copy of the EPL is provided with this Content and is also
+ 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, "Program" will mean the Content.</p>
+
+<p>Content includes, but is not limited to, source code, object code,
+documentation and other files maintained in the Eclipse Foundation
+source code
+ repository ("Repository") in software modules ("Modules") and made
+available as downloadable archives ("Downloads").</p>
+
+<ul>
+ <li>Content may be structured and packaged into modules to
+facilitate delivering, extending, and upgrading the Content. Typical
+modules may include plug-ins ("Plug-ins"), plug-in fragments
+("Fragments"), and features ("Features").</li>
+ <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&#8482; ARchive) in a directory named "plugins".</li>
+ <li>A Feature is a bundle of one or more Plug-ins and/or
+Fragments and associated material. Each Feature may be packaged as a
+sub-directory in a directory named "features". Within a Feature, files
+named "feature.xml" may contain a list of the names and version numbers
+of the Plug-ins
+ and/or Fragments associated with that Feature.</li>
+ <li>Features may also include other Features ("Included
+Features"). Within a Feature, files named "feature.xml" may contain a
+list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be
+contained in files named "about.html" ("Abouts"). The terms and
+conditions governing Features and
+Included Features should be contained in files named "license.html"
+("Feature Licenses"). Abouts and Feature Licenses may be located in any
+ directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+ <li>The top-level (root) directory</li>
+ <li>Plug-in and Fragment directories</li>
+ <li>Inside Plug-ins and Fragments packaged as JARs</li>
+ <li>Sub-directories of the directory named "src" of certain Plug-ins</li>
+ <li>Feature directories</li>
+</ul>
+
+<p>Note: if a Feature made available by the Eclipse Foundation is
+installed using the Provisioning Technology (as defined below), you must
+ agree to a license ("Feature Update License") during the
+installation process. If the Feature contains Included Features, the
+Feature Update License should either provide you with the terms and
+conditions governing the Included Features or
+inform you where you can locate them. Feature Update Licenses may be
+found in the "license" property of files named "feature.properties"
+found within a Feature.
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the
+terms and conditions (or references to such terms and conditions) that
+govern your use of the associated Content in
+that directory.</p>
+
+<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER
+TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.
+ SOME OF THESE
+OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
+
+<ul>
+ <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+ <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+ <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+ <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+ <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
+ <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND
+CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License,
+or Feature Update License is provided, please
+contact the Eclipse Foundation to determine what terms and conditions
+govern that particular Content.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software,
+examples of which include, but are not limited to, p2 and the Eclipse
+ Update Manager ("Provisioning Technology") for the purpose of
+allowing users to install software, documentation, information and/or
+ other materials (collectively "Installable Software"). This
+capability is provided with the intent of allowing such users to
+ install, extend and update Eclipse-based products. Information about
+packaging Installable Software is available at <a href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+ ("Specification").</p>
+
+<p>You may use Provisioning Technology to allow other parties to install
+ Installable Software. You shall be responsible for enabling the
+ applicable license agreements relating to the Installable Software to
+ be presented to, and accepted by, the users of the Provisioning
+Technology
+ in accordance with the Specification. By using Provisioning
+Technology in such a manner and making it available in accordance with
+the
+ Specification, you further acknowledge your agreement to, and the
+acquisition of all necessary rights to permit the following:</p>
+
+<ol>
+ <li>A series of actions may occur ("Provisioning Process") in
+which a user may execute the Provisioning Technology
+ on a machine ("Target Machine") with the intent of installing,
+extending or updating the functionality of an Eclipse-based
+ product.</li>
+ <li>During the Provisioning Process, the Provisioning Technology
+may cause third party Installable Software or a portion thereof to be
+ accessed and copied to the Target Machine.</li>
+ <li>Pursuant to the Specification, you will provide to the user
+the terms and conditions that govern the use of the Installable
+ Software ("Installable Software Agreement") and such Installable
+Software Agreement shall be accessed from the Target
+ Machine in accordance with the Specification. Such Installable
+Software Agreement must inform the user of the terms and conditions that
+ govern
+ the Installable Software and must solicit acceptance by the end
+user in the manner prescribed in such Installable Software Agreement.
+Upon such
+ indication of agreement by the user, the provisioning Technology
+will complete installation of the Installable Software.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>Content may contain encryption software. The country in which you are
+ currently may have restrictions on the import, possession, and use,
+and/or re-export to
+ another country, of encryption software. BEFORE using any encryption
+software, please check the country's laws, regulations and policies
+concerning the import,
+ possession, or use, and re-export of encryption software, to see if
+this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+
+
+</body></html> \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/pom.xml b/org.eclipse.osbp.mobile.vaadin.ecview.api/pom.xml
new file mode 100644
index 0000000..0d2962c
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/pom.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--#======================================================================= -->
+<!--# Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany) -->
+<!--# 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: -->
+<!--# Florian Pirchner - initial API and implementation -->
+<!--#======================================================================= -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.eclipse.osbp.mobile.vaadin</groupId>
+ <artifactId>org.eclipse.osbp.mobile.vaadin.aggregator</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
+ </parent>
+ <artifactId>org.eclipse.osbp.mobile.vaadin.ecview.api</artifactId>
+ <packaging>eclipse-plugin</packaging>
+ <description>Contains the API for ui controller</description>
+</project>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/src/org/eclipse/osbp/mobile/vaadin/ecview/api/AbstractMobileView.java b/org.eclipse.osbp.mobile.vaadin.ecview.api/src/org/eclipse/osbp/mobile/vaadin/ecview/api/AbstractMobileView.java
new file mode 100644
index 0000000..542b0e0
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/src/org/eclipse/osbp/mobile/vaadin/ecview/api/AbstractMobileView.java
@@ -0,0 +1,292 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.api;
+
+import org.eclipse.emf.common.notify.impl.AdapterImpl;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.osbp.dsl.dto.lib.impl.DtoServiceAccess;
+import org.eclipse.osbp.dsl.dto.lib.services.IDTOServiceWithMutablePersistence;
+import org.eclipse.osbp.ecview.core.common.context.ContextException;
+import org.eclipse.osbp.ecview.core.common.context.IViewContext;
+import org.eclipse.osbp.ecview.core.common.extender.IECViewCache;
+import org.eclipse.osbp.ecview.core.common.model.core.YView;
+import org.eclipse.osbp.ecview.core.extension.model.extension.YTable;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton;
+import org.eclipse.osbp.runtime.web.ecview.presentation.vaadin.VaadinRenderer;
+import org.eclipse.osbp.utils.themes.ui.MobileUiTheme;
+import org.osgi.framework.FrameworkUtil;
+import org.osgi.util.tracker.ServiceTracker;
+
+import com.vaadin.ui.ComponentContainer;
+import com.vaadin.ui.Notification;
+import com.vaadin.ui.Notification.Type;
+import com.vaadin.ui.UI;
+import com.vaadin.ui.VerticalLayout;
+
+/**
+ * The Class AbstractMobileView.
+ */
+@SuppressWarnings("restriction")
+public abstract class AbstractMobileView extends VerticalLayout implements
+ IMobileUiParticipantHandle {
+
+ /** The Constant serialVersionUID. */
+ private static final long serialVersionUID = 195924123437668903L;
+
+ /** The view context. */
+ protected IViewContext viewContext;
+
+ /** The dto service. */
+ protected IDTOServiceWithMutablePersistence<?> dtoService;
+
+ /**
+ * Gets the title text.
+ *
+ * @return the title text
+ */
+ protected String getTitleText() {
+ return MobileUiTheme.MOBILE_TITLE;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.osbp.ecview.servlet.mobile.IMobileUiParticipantHandle#getTheme
+ * ()
+ */
+ @Override
+ public String getTheme() {
+ return MobileUiTheme.MOBILE_THEME;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.osbp.ecview.servlet.mobile.IMobileUiParticipantHandle#handle
+ * (com.vaadin.ui.ComponentContainer, java.lang.String)
+ */
+ @Override
+ public void handle(ComponentContainer mainLayout, String fragment) {
+ initialize(mainLayout, fragment);
+ }
+
+ /**
+ * Gets the view id.
+ *
+ * @return the view id
+ */
+ protected abstract String getViewId();
+
+ /**
+ * Gets the dto class.
+ *
+ * @return the dto class
+ */
+ protected abstract Class<?> getDtoClass();
+
+ /**
+ * Register an observer at the EObject for the save-navigationBarAction.
+ *
+ * @param actionId
+ * the action id
+ * @param observer
+ * the observer
+ */
+ protected void registerHandler(String actionId, AdapterImpl observer) {
+ if ((actionId != null) && (observer != null)) {
+ VMNavigationBarButton vmButton = findAction(actionId);
+ if (vmButton != null) {
+ vmButton.eAdapters().add(observer);
+ } else {
+ Notification.show("Button for " + actionId
+ + " could not be found!", Type.ERROR_MESSAGE);
+ }
+ }
+ }
+
+ /**
+ * Register an observer at the EObject for the save-navigationBarAction.
+ *
+ * @param actionId
+ * the action id
+ * @param observer
+ * the observer
+ */
+ protected void unregisterHandler(String actionId, AdapterImpl observer) {
+ if ((actionId != null) && (observer != null)) {
+ VMNavigationBarButton vmButton = findAction(actionId);
+ if (vmButton != null) {
+ vmButton.eAdapters().remove(observer);
+ }
+ }
+ }
+
+ /**
+ * Initialize.
+ *
+ * @param parent
+ * the parent
+ * @param fragment
+ * the fragment
+ */
+ protected void initialize(ComponentContainer parent, String fragment) {
+ parent.addComponent(this);
+ setSizeFull();
+
+ VerticalLayout renderLayout = new VerticalLayout();
+ addComponent(renderLayout);
+ renderLayout.setSizeFull();
+
+ dtoService = (IDTOServiceWithMutablePersistence<?>) DtoServiceAccess
+ .getService(getDtoClass());
+ if (dtoService == null) {
+ Notification.show(getDtoClass() + " could not be loaded!",
+ Type.ERROR_MESSAGE);
+ }
+ YView yView = findViewModel(getViewId());
+ if (yView == null) {
+ Notification.show(getViewId() + " could not be found!",
+ Type.ERROR_MESSAGE);
+ return;
+ }
+
+ // render the Vaadin UI
+ VaadinRenderer renderer = new VaadinRenderer();
+ try {
+ viewContext = renderer.render(renderLayout, yView, null);
+
+ doInitialize(viewContext, fragment);
+
+ } // NOSONAR
+ catch (ContextException e) { // NOSONAR - keep on going
+ e.printStackTrace(); // NOSONAR
+ }
+
+ if (getTitleText() != null) {
+ try {
+ UI.getCurrent().getPage().setTitle(getTitleText());
+ } catch (Exception e) { // NOSONAR - keep on going
+ e.printStackTrace(); // NOSONAR
+ }
+ }
+ }
+
+ /**
+ * Do initialize.
+ *
+ * @param viewContext
+ * the view context
+ * @param fragment
+ * the fragment
+ */
+ protected void doInitialize(IViewContext viewContext, String fragment) {
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.osbp.ecview.servlet.mobile.IMobileUiParticipantHandle#dispose
+ * ()
+ */
+ @Override
+ public void dispose() {
+ try {
+ if (viewContext != null) {
+ viewContext.dispose();
+ }
+ } catch (Exception ex) { // NOSONAR - keep on going
+ ex.printStackTrace(); // NOSONAR
+ }
+ }
+
+ /**
+ * Tries to find the view model using the ecview addons service.
+ *
+ * @param uiName
+ * the ui name
+ * @return the y view
+ */
+ protected YView findViewModel(String uiName) {
+ ServiceTracker<IECViewCache, IECViewCache> tracker = new ServiceTracker<>(
+ FrameworkUtil.getBundle(getClass()).getBundleContext(),
+ IECViewCache.class, null);
+ tracker.open();
+ try {
+ IECViewCache uiService = tracker.waitForService(5000);
+ return uiService.getView(uiName);
+ } catch (InterruptedException e) { // NOSONAR - keep on going
+ e.printStackTrace(); // NOSONAR
+ } finally {
+ tracker.close();
+ }
+ return null;
+ }
+
+ /**
+ * Tries to find the VMNavigationBarButton in the viewcontext.
+ *
+ * @param id
+ * the id
+ * @return VMNavigationBarButton or null
+ */
+ protected VMNavigationBarButton findAction(String id) {
+ if (viewContext == null) {
+ return null;
+ }
+ if (id == null) {
+ return null;
+ }
+ YView yView = (YView) viewContext.getViewEditpart().getModel();
+ TreeIterator<EObject> contents = yView.eAllContents();
+ while (contents.hasNext()) {
+ EObject expected = contents.next();
+ if (expected instanceof VMNavigationBarButton) {
+ VMNavigationBarButton yButton = (VMNavigationBarButton) expected;
+ if (id.equals(yButton.getId())) { // NOSONAR - keep on going
+ return yButton;
+ }
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Tries to find the YTable in the viewcontext.
+ *
+ * @param id
+ * the id
+ * @return YTable or null
+ */
+ protected YTable findTable(String id) {
+ if (viewContext == null) {
+ return null;
+ }
+ if (id == null) {
+ return null;
+ }
+ YView yView = (YView) viewContext.getViewEditpart().getModel();
+ TreeIterator<EObject> contents = yView.eAllContents();
+ while (contents.hasNext()) {
+ EObject expected = contents.next();
+ if (expected instanceof YTable) {
+ YTable yTable = (YTable) expected;
+ if (id.equals(yTable.getId())) {
+ return yTable;
+ }
+ }
+ }
+ return null;
+ }
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/src/org/eclipse/osbp/mobile/vaadin/ecview/api/IMobileUiParticipant.java b/org.eclipse.osbp.mobile.vaadin.ecview.api/src/org/eclipse/osbp/mobile/vaadin/ecview/api/IMobileUiParticipant.java
new file mode 100644
index 0000000..8133929
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/src/org/eclipse/osbp/mobile/vaadin/ecview/api/IMobileUiParticipant.java
@@ -0,0 +1,60 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.api;
+
+import com.vaadin.ui.UI;
+
+/**
+ * Implementations of the interface need to provide UI handles. A handle is
+ * related with an instance of {@link UI} and an uiId (fragment), and has to
+ * visualize mobile UI contents (pages) based on the given URL-fragment.
+ * <p>
+ * Implementations need to become registered as an OSGi-service. The participant
+ * will be found by the OSGi-Property (uriFragment={fragmen}).
+ * <p>
+ * For instance:<br>
+ *
+ * <pre>
+ * &#064;Component(property = { &quot;uriFragment=org.carstore.sample.CustomerView&quot; })
+ * public static class UiProvider implements IMobileUiParticipant {
+ *
+ * &#064;Override
+ * public IMobileUiParticipantHandle createHandle(UI ui, String fragment) {
+ * return new CustomerView();
+ * }
+ * }
+ * </pre>
+ */
+public interface IMobileUiParticipant {
+
+ /** The Constant PROPERTY_FRAGMENT_NAME. */
+ public static final String PROPERTY_FRAGMENT_NAME = "uriFragment";
+
+ /** The Constant ORG_LUNIFERA_UI_MOBILE_ERROR_VIEW_FRAGMENT_NAME. */
+ public static final String ERROR_VIEW_FRAGMENT_NAME = "org.eclipse.osbp.ui.mobile.ErrorView";
+
+ /**
+ * Creates a new UI handle.
+ *
+ * @param ui
+ * @param fragment
+ * - the ID of the UI
+ * @return
+ */
+ IMobileUiParticipantHandle createHandle(UI ui, String fragment);
+
+ /**
+ * Gets the fragment name.
+ *
+ * @return the fragment name
+ */
+ public abstract String getFragmentName();
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.api/src/org/eclipse/osbp/mobile/vaadin/ecview/api/IMobileUiParticipantHandle.java b/org.eclipse.osbp.mobile.vaadin.ecview.api/src/org/eclipse/osbp/mobile/vaadin/ecview/api/IMobileUiParticipantHandle.java
new file mode 100644
index 0000000..9201c78
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.api/src/org/eclipse/osbp/mobile/vaadin/ecview/api/IMobileUiParticipantHandle.java
@@ -0,0 +1,43 @@
+/**
+ * Copyright (c) 2011, 2014 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.api;
+
+import com.vaadin.ui.ComponentContainer;
+
+/**
+ * Implementations of the interface need to visualize mobile Vaadin pages.<br>
+ * Therefore the URL-fragment is passed with the main layout of the UI.<br>
+ * {@link IMobileUiParticipantHandle} are provided by
+ * {@link IMobileUiParticipant} that are related with the fragment.
+ */
+public interface IMobileUiParticipantHandle {
+
+ /**
+ * Returns the theme name that should be used.
+ *
+ * @return
+ */
+ String getTheme();
+
+ /**
+ * Needs to visualize the site related to the given fragment.
+ *
+ * @param mainLayout
+ * @param fragment
+ */
+ void handle(ComponentContainer mainLayout, String fragment);
+
+ /**
+ * This method will dispose the handle.
+ */
+ void dispose();
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/.checkstyle b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/.checkstyle
new file mode 100644
index 0000000..2f2667a
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/.checkstyle
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <fileset name="all" enabled="true" check-config-name="emfstoreStyle" local="false">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ </fileset>
+</fileset-config>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/.project b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/.project
new file mode 100644
index 0000000..fd0fbdb
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/.project
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <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>
+ <buildCommand>
+ <name>org.eclipse.pde.ds.core.builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.sonarlint.eclipse.core.sonarlintBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.babel.editor.rbeBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.babel.editor.rbeNature</nature>
+ </natures>
+</projectDescription>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/LICENSE.txt b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/LICENSE.txt
new file mode 100644
index 0000000..ff42ad4
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/LICENSE.txt
@@ -0,0 +1,161 @@
+Eclipse Public License -v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION
+OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor.
+A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone
+acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate
+modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not
+derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of
+its Contribution alone or when combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute
+and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code
+form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the
+Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the
+combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such
+addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not
+apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no
+assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity
+based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property
+rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the
+Program, it is Recipient's responsibility to acquire that license before distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to
+grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including
+warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and
+fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any
+other party; and
+
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it
+in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and
+the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes
+the Program in a commercial product offering should do so in a manner which does not create potential liability for
+other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions
+brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such
+Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual
+property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the
+Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may
+ participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is
+then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties
+related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone.
+Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to
+those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result,
+the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR
+CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE,
+NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for
+determining the appropriateness of using and distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance
+with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS),
+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such
+provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such
+Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such
+litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such
+noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution
+of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses
+ granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement
+is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish
+new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the
+right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the
+Agreement will be given a distinguishing version number. The Program (including Contributions) may always be
+distributed subject to the version of the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the
+new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States
+of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause
+of action arose. Each party waives its rights to a jury trial in any resulting litigation. \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/META-INF/MANIFEST.MF b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..c618bf4
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/META-INF/MANIFEST.MF
@@ -0,0 +1,35 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf
+Bundle-SymbolicName: org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf
+Bundle-Vendor: Eclipse OSBP
+Bundle-Version: 0.9.0.qualifier
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore.xmi;bundle-version="2.8.0",
+ org.eclipse.osbp.ecview.core.extension.editparts;bundle-version="[0.9.0,0.10.0)",
+ org.eclipse.osbp.ecview.core.common.editparts.emf;bundle-version="[0.9.0,0.10.0)",
+ org.eclipse.osbp.ecview.core.extension.model;bundle-version="[0.9.0,0.10.0)",
+ org.eclipse.osbp.ecview.core.common;bundle-version="[0.9.0,0.10.0)",
+ org.eclipse.osbp.ecview.core.common.model;bundle-version="[0.9.0,0.10.0)",
+ org.eclipse.osbp.mobile.vaadin.ecview.model;bundle-version="[0.9.0,0.10.0)",
+ org.eclipse.osbp.mobile.vaadin.ecview.editparts;bundle-version="[0.9.0,0.10.0)",
+ org.eclipse.core.databinding.observable;bundle-version="[1.4.1,1.5.0)",
+ org.eclipse.core.databinding;bundle-version="[1.4.2,1.5.0)",
+ org.eclipse.emf.databinding;bundle-version="1.3.0",
+ org.eclipse.core.databinding.beans;bundle-version="1.2.200",
+ org.eclipse.osbp.runtime.common;bundle-version="[0.9.0,0.10.0)",
+ org.slf4j.api;bundle-version="1.7.2"
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Import-Package: org.osgi.service.component;version="1.2.0"
+Service-Component: OSGI-INF/editPartManager.xml
+Export-Package: org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+ uses:="org.eclipse.osbp.ecview.core.common.editpart.binding,
+ org.eclipse.osbp.mobile.vaadin.ecview.editparts,
+ org.eclipse.osbp.ecview.core.common.editpart.emf.common,
+ org.eclipse.osbp.ecview.core.common.editpart,
+ org.eclipse.osbp.mobile.vaadin.ecview.model,
+ org.eclipse.osbp.mobile.vaadin.ecview.editparts.presentation,
+ org.eclipse.emf.common.notify,
+ org.osgi.service.component,
+ org.eclipse.osbp.ecview.core.common.editpart.emf";version="0.9.0"
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/OSGI-INF/editPartManager.xml b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/OSGI-INF/editPartManager.xml
new file mode 100644
index 0000000..d017b1f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/OSGI-INF/editPartManager.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" immediate="false" name="org.eclipse.osbp.mobile.vaadin.ecview.editparts.editpartmanager">
+ <implementation class="org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf.EditpartManager"/>
+ <service>
+ <provide interface="org.eclipse.osbp.ecview.core.common.editpart.IEditPartManager"/>
+ </service>
+</scr:component>
+ \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.html b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.html
new file mode 100644
index 0000000..64c0598
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/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>June 1, 2016</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/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.ini b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.ini
new file mode 100644
index 0000000..7df671f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.ini
@@ -0,0 +1,17 @@
+# about.ini
+# contains information about a feature
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# "%key" are externalized strings defined in about.properties
+# This file does not need to be translated.
+
+# Property "aboutText" contains blurb for "About" dialog (translated)
+aboutText=%featureText
+
+# Property "featureImage" contains path to feature image (32x32)
+featureImage=
+
+# Property "appName" contains name of the application (translated)
+appName=%featureName
+
+# Property "welcomePage" contains path to welcome page (special XML-based format)
+welcomePage=
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.mappings b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.mappings
new file mode 100644
index 0000000..4511a0a
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.mappings
@@ -0,0 +1,6 @@
+# about.mappings
+# contains fill-ins for about.properties
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# This file does not need to be translated.
+
+0=qualifier
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.properties b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.properties
new file mode 100644
index 0000000..8456a51
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/about.properties
@@ -0,0 +1,26 @@
+#
+# Copyright (c) 2012, 2016 - Loetz GmbH&Co.KG (Heidelberg)
+# 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:
+# Christophe Loetz (Loetz GmbH&Co.KG) - initial API and implementation
+#
+
+# NLS_MESSAGEFORMAT_VAR
+
+featureName=org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf
+
+################ blurb property ####################################
+featureText=\
+Copyright (c) 2012-2016 - Loetz GmbH&Co.KG \n\
+All rights reserved. This program and the accompanying materials\n\
+are made available under the terms of the Eclipse Public License v1.0\n\
+which accompanies this distribution, and is available at\n\
+http://www.eclipse.org/legal/epl-v10.html\n\
+\n\
+Contributors:\n\
+ Christophe Loetz (Loetz GmbH&Co.KG) - initial implementation\n
+################ end of blurb property ####################################
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/build.properties b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/build.properties
new file mode 100644
index 0000000..0d4e3ab
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/build.properties
@@ -0,0 +1,9 @@
+source.. = src/
+bin.includes = about.properties, about.mappings, about.ini, about.html, META-INF/,\
+ .,\
+ OSGI-INF/,\
+ LICENSE.txt,\
+ license.html
+output.. = target/classes
+src.includes = about.properties, about.mappings, about.ini, about.html, LICENSE.txt,\
+ license.html
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/epl-v10.html b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/epl-v10.html
new file mode 100644
index 0000000..b398acc
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/epl-v10.html
@@ -0,0 +1,259 @@
+<!--?xml version="1.0" encoding="ISO-8859-1" ?-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Eclipse Public License - Version 1.0</title>
+<style type="text/css">
+ body {
+ size: 8.5in 11.0in;
+ margin: 0.25in 0.5in 0.25in 0.5in;
+ tab-interval: 0.5in;
+ }
+ p {
+ margin-left: auto;
+ margin-top: 0.5em;
+ margin-bottom: 0.5em;
+ }
+ p.list {
+ margin-left: 0.5in;
+ margin-top: 0.05em;
+ margin-bottom: 0.05em;
+ }
+ </style>
+
+</head>
+
+<body lang="EN-US">
+
+<h2>Eclipse Public License - v 1.0</h2>
+
+<p>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
+PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR
+DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS
+AGREEMENT.</p>
+
+<p><b>1. DEFINITIONS</b></p>
+
+<p>"Contribution" means:</p>
+
+<p class="list">a) in the case of the initial Contributor, the initial
+code and documentation distributed under this Agreement, and</p>
+<p class="list">b) in the case of each subsequent Contributor:</p>
+<p class="list">i) changes to the Program, and</p>
+<p class="list">ii) additions to the Program;</p>
+<p class="list">where such changes and/or additions to the Program
+originate from and are distributed by that particular Contributor. A
+Contribution 'originates' from a Contributor if it was added to the
+Program by such Contributor itself or anyone acting on such
+Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in
+conjunction with the Program under their own license agreement, and (ii)
+are not derivative works of the Program.</p>
+
+<p>"Contributor" means any person or entity that distributes
+the Program.</p>
+
+<p>"Licensed Patents" mean patent claims licensable by a
+Contributor which are necessarily infringed by the use or sale of its
+Contribution alone or when combined with the Program.</p>
+
+<p>"Program" means the Contributions distributed in accordance
+with this Agreement.</p>
+
+<p>"Recipient" means anyone who receives the Program under
+this Agreement, including all Contributors.</p>
+
+<p><b>2. GRANT OF RIGHTS</b></p>
+
+<p class="list">a) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works
+of, publicly display, publicly perform, distribute and sublicense the
+Contribution of such Contributor, if any, and such derivative works, in
+source code and object code form.</p>
+
+<p class="list">b) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell,
+offer to sell, import and otherwise transfer the Contribution of such
+Contributor, if any, in source code and object code form. This patent
+license shall apply to the combination of the Contribution and the
+Program if, at the time the Contribution is added by the Contributor,
+such addition of the Contribution causes such combination to be covered
+by the Licensed Patents. The patent license shall not apply to any other
+combinations which include the Contribution. No hardware per se is
+licensed hereunder.</p>
+
+<p class="list">c) Recipient understands that although each Contributor
+grants the licenses to its Contributions set forth herein, no assurances
+are provided by any Contributor that the Program does not infringe the
+patent or other intellectual property rights of any other entity. Each
+Contributor disclaims any liability to Recipient for claims brought by
+any other entity based on infringement of intellectual property rights
+or otherwise. As a condition to exercising the rights and licenses
+granted hereunder, each Recipient hereby assumes sole responsibility to
+secure any other intellectual property rights needed, if any. For
+example, if a third party patent license is required to allow Recipient
+to distribute the Program, it is Recipient's responsibility to acquire
+that license before distributing the Program.</p>
+
+<p class="list">d) Each Contributor represents that to its knowledge it
+has sufficient copyright rights in its Contribution, if any, to grant
+the copyright license set forth in this Agreement.</p>
+
+<p><b>3. REQUIREMENTS</b></p>
+
+<p>A Contributor may choose to distribute the Program in object code
+form under its own license agreement, provided that:</p>
+
+<p class="list">a) it complies with the terms and conditions of this
+Agreement; and</p>
+
+<p class="list">b) its license agreement:</p>
+
+<p class="list">i) effectively disclaims on behalf of all Contributors
+all warranties and conditions, express and implied, including warranties
+or conditions of title and non-infringement, and implied warranties or
+conditions of merchantability and fitness for a particular purpose;</p>
+
+<p class="list">ii) effectively excludes on behalf of all Contributors
+all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;</p>
+
+<p class="list">iii) states that any provisions which differ from this
+Agreement are offered by that Contributor alone and not by any other
+party; and</p>
+
+<p class="list">iv) states that source code for the Program is available
+from such Contributor, and informs licensees how to obtain it in a
+reasonable manner on or through a medium customarily used for software
+exchange.</p>
+
+<p>When the Program is made available in source code form:</p>
+
+<p class="list">a) it must be made available under this Agreement; and</p>
+
+<p class="list">b) a copy of this Agreement must be included with each
+copy of the Program.</p>
+
+<p>Contributors may not remove or alter any copyright notices contained
+within the Program.</p>
+
+<p>Each Contributor must identify itself as the originator of its
+Contribution, if any, in a manner that reasonably allows subsequent
+Recipients to identify the originator of the Contribution.</p>
+
+<p><b>4. COMMERCIAL DISTRIBUTION</b></p>
+
+<p>Commercial distributors of software may accept certain
+responsibilities with respect to end users, business partners and the
+like. While this license is intended to facilitate the commercial use of
+the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create
+potential liability for other Contributors. Therefore, if a Contributor
+includes the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and
+indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses")
+arising from claims, lawsuits and other legal actions brought by a third
+party against the Indemnified Contributor to the extent caused by the
+acts or omissions of such Commercial Contributor in connection with its
+distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In
+order to qualify, an Indemnified Contributor must: a) promptly notify
+the Commercial Contributor in writing of such claim, and b) allow the
+Commercial Contributor to control, and cooperate with the Commercial
+Contributor in, the defense and any related settlement negotiations. The
+Indemnified Contributor may participate in any such claim at its own
+expense.</p>
+
+<p>For example, a Contributor might include the Program in a commercial
+product offering, Product X. That Contributor is then a Commercial
+Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance
+claims and warranties are such Commercial Contributor's responsibility
+alone. Under this section, the Commercial Contributor would have to
+defend claims against the other Contributors related to those
+performance claims and warranties, and if a court requires any other
+Contributor to pay any damages as a result, the Commercial Contributor
+must pay those damages.</p>
+
+<p><b>5. NO WARRANTY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
+PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION,
+ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
+OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and
+distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to
+the risks and costs of program errors, compliance with applicable laws,
+damage to or loss of data, programs or equipment, and unavailability or
+interruption of operations.</p>
+
+<p><b>6. DISCLAIMER OF LIABILITY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT
+NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
+WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
+DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p>
+
+<p><b>7. GENERAL</b></p>
+
+<p>If any provision of this Agreement is invalid or unenforceable under
+applicable law, it shall not affect the validity or enforceability of
+the remainder of the terms of this Agreement, and without further action
+by the parties hereto, such provision shall be reformed to the minimum
+extent necessary to make such provision valid and enforceable.</p>
+
+<p>If Recipient institutes patent litigation against any entity
+(including a cross-claim or counterclaim in a lawsuit) alleging that the
+Program itself (excluding combinations of the Program with other
+software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the
+date such litigation is filed.</p>
+
+<p>All Recipient's rights under this Agreement shall terminate if it
+fails to comply with any of the material terms or conditions of this
+Agreement and does not cure such failure in a reasonable period of time
+after becoming aware of such noncompliance. If all Recipient's rights
+under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive.</p>
+
+<p>Everyone is permitted to copy and distribute copies of this
+Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The
+Agreement Steward reserves the right to publish new versions (including
+revisions) of this Agreement from time to time. No one other than the
+Agreement Steward has the right to modify this Agreement. The Eclipse
+Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a
+suitable separate entity. Each new version of the Agreement will be
+given a distinguishing version number. The Program (including
+Contributions) may always be distributed subject to the version of the
+Agreement under which it was received. In addition, after a new version
+of the Agreement is published, Contributor may elect to distribute the
+Program (including its Contributions) under the new version. Except as
+expressly stated in Sections 2(a) and 2(b) above, Recipient receives no
+rights or licenses to the intellectual property of any Contributor under
+this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this
+Agreement are reserved.</p>
+
+<p>This Agreement is governed by the laws of the State of New York and
+the intellectual property laws of the United States of America. No party
+to this Agreement will bring a legal action under this Agreement more
+than one year after the cause of action arose. Each party waives its
+rights to a jury trial in any resulting litigation.</p>
+
+
+
+</body></html> \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/license.html b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/license.html
new file mode 100644
index 0000000..6e579a5
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/license.html
@@ -0,0 +1,164 @@
+<!--?xml version="1.0" encoding="ISO-8859-1" ?-->
+<!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>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>February 1, 2011</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+ (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
+ CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE
+ OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
+ NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
+ CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>Unless otherwise indicated, all Content made available by the Eclipse
+ Foundation is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0
+ ("EPL"). A copy of the EPL is provided with this Content and is also
+ 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, "Program" will mean the Content.</p>
+
+<p>Content includes, but is not limited to, source code, object code,
+documentation and other files maintained in the Eclipse Foundation
+source code
+ repository ("Repository") in software modules ("Modules") and made
+available as downloadable archives ("Downloads").</p>
+
+<ul>
+ <li>Content may be structured and packaged into modules to
+facilitate delivering, extending, and upgrading the Content. Typical
+modules may include plug-ins ("Plug-ins"), plug-in fragments
+("Fragments"), and features ("Features").</li>
+ <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&#8482; ARchive) in a directory named "plugins".</li>
+ <li>A Feature is a bundle of one or more Plug-ins and/or
+Fragments and associated material. Each Feature may be packaged as a
+sub-directory in a directory named "features". Within a Feature, files
+named "feature.xml" may contain a list of the names and version numbers
+of the Plug-ins
+ and/or Fragments associated with that Feature.</li>
+ <li>Features may also include other Features ("Included
+Features"). Within a Feature, files named "feature.xml" may contain a
+list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be
+contained in files named "about.html" ("Abouts"). The terms and
+conditions governing Features and
+Included Features should be contained in files named "license.html"
+("Feature Licenses"). Abouts and Feature Licenses may be located in any
+ directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+ <li>The top-level (root) directory</li>
+ <li>Plug-in and Fragment directories</li>
+ <li>Inside Plug-ins and Fragments packaged as JARs</li>
+ <li>Sub-directories of the directory named "src" of certain Plug-ins</li>
+ <li>Feature directories</li>
+</ul>
+
+<p>Note: if a Feature made available by the Eclipse Foundation is
+installed using the Provisioning Technology (as defined below), you must
+ agree to a license ("Feature Update License") during the
+installation process. If the Feature contains Included Features, the
+Feature Update License should either provide you with the terms and
+conditions governing the Included Features or
+inform you where you can locate them. Feature Update Licenses may be
+found in the "license" property of files named "feature.properties"
+found within a Feature.
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the
+terms and conditions (or references to such terms and conditions) that
+govern your use of the associated Content in
+that directory.</p>
+
+<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER
+TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.
+ SOME OF THESE
+OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
+
+<ul>
+ <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+ <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+ <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+ <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+ <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
+ <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND
+CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License,
+or Feature Update License is provided, please
+contact the Eclipse Foundation to determine what terms and conditions
+govern that particular Content.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software,
+examples of which include, but are not limited to, p2 and the Eclipse
+ Update Manager ("Provisioning Technology") for the purpose of
+allowing users to install software, documentation, information and/or
+ other materials (collectively "Installable Software"). This
+capability is provided with the intent of allowing such users to
+ install, extend and update Eclipse-based products. Information about
+packaging Installable Software is available at <a href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+ ("Specification").</p>
+
+<p>You may use Provisioning Technology to allow other parties to install
+ Installable Software. You shall be responsible for enabling the
+ applicable license agreements relating to the Installable Software to
+ be presented to, and accepted by, the users of the Provisioning
+Technology
+ in accordance with the Specification. By using Provisioning
+Technology in such a manner and making it available in accordance with
+the
+ Specification, you further acknowledge your agreement to, and the
+acquisition of all necessary rights to permit the following:</p>
+
+<ol>
+ <li>A series of actions may occur ("Provisioning Process") in
+which a user may execute the Provisioning Technology
+ on a machine ("Target Machine") with the intent of installing,
+extending or updating the functionality of an Eclipse-based
+ product.</li>
+ <li>During the Provisioning Process, the Provisioning Technology
+may cause third party Installable Software or a portion thereof to be
+ accessed and copied to the Target Machine.</li>
+ <li>Pursuant to the Specification, you will provide to the user
+the terms and conditions that govern the use of the Installable
+ Software ("Installable Software Agreement") and such Installable
+Software Agreement shall be accessed from the Target
+ Machine in accordance with the Specification. Such Installable
+Software Agreement must inform the user of the terms and conditions that
+ govern
+ the Installable Software and must solicit acceptance by the end
+user in the manner prescribed in such Installable Software Agreement.
+Upon such
+ indication of agreement by the user, the provisioning Technology
+will complete installation of the Installable Software.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>Content may contain encryption software. The country in which you are
+ currently may have restrictions on the import, possession, and use,
+and/or re-export to
+ another country, of encryption software. BEFORE using any encryption
+software, please check the country's laws, regulations and policies
+concerning the import,
+ possession, or use, and re-export of encryption software, to see if
+this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+
+
+</body></html> \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/pom.xml b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/pom.xml
new file mode 100644
index 0000000..5db77b3
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/pom.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--#======================================================================= -->
+<!--# Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany) -->
+<!--# 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: -->
+<!--# Christophe Loetz (Loetz GmbH&Co.KG) - initial API and implementation -->
+<!--#======================================================================= -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.osbp.mobile.vaadin</groupId>
+ <artifactId>org.eclipse.osbp.mobile.vaadin.aggregator</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
+ </parent>
+ <artifactId>org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf</artifactId>
+ <packaging>eclipse-plugin</packaging>
+ <description>Contains the EMF based ui controller</description>
+ <build>
+ <sourceDirectory>src</sourceDirectory>
+ </build>
+</project>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/EditpartManager.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/EditpartManager.java
new file mode 100644
index 0000000..ac1e8c0
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/EditpartManager.java
@@ -0,0 +1,122 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.osbp.ecview.core.common.context.IViewContext;
+import org.eclipse.osbp.ecview.core.common.editpart.IElementEditpart;
+import org.eclipse.osbp.ecview.core.common.editpart.emf.ElementEditpart;
+import org.eclipse.osbp.ecview.core.common.editpart.emf.common.AbstractEditpartManager;
+import org.eclipse.osbp.ecview.core.common.model.core.YElement;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMHorizontalButtonGroup;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationRoot;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMVerticalComponentGroup;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+import org.osgi.service.component.ComponentContext;
+
+/**
+ * An implementation of IEditPartManager for eObjects with
+ * nsURI=http://eclipse.org/emf/emfclient/uimodel.
+ */
+public class EditpartManager extends AbstractEditpartManager {
+
+ protected void activate(ComponentContext context) {
+
+ }
+
+ protected void deactivate(ComponentContext context) {
+
+ }
+
+ @Override
+ public boolean isFor(Object element) {
+ if (element instanceof EObject) {
+ String uriString = ((EObject) element).eClass().getEPackage()
+ .getNsURI();
+ return uriString.equals(VaadinMobilePackage.eNS_URI);
+ } else if (element instanceof String) {
+ return element.equals(VaadinMobilePackage.eNS_URI);
+ }
+ return false;
+ }
+
+ /**
+ * Creates a new instance of the edit part.
+ *
+ * @param <A>
+ * an instance of {@link IElementEditpart}
+ * @param yElement
+ * the model element
+ * @return editpart
+ */
+ @SuppressWarnings("unchecked")
+ protected <A extends IElementEditpart> A createEditpart(IViewContext context, Object yElement) {
+ // asserts that no editpart was created already for the given element
+ assertOneEditpartForModelelement(yElement);
+
+ ElementEditpart<YElement> result = null;
+ if (yElement instanceof VMHorizontalButtonGroup) {
+ result = createNewInstance(HorizontalButtonGroupEditpart.class);
+ } else if (yElement instanceof VMSwitch) {
+ result = createNewInstance(SwitchEditpart.class);
+ } else if (yElement instanceof VMVerticalComponentGroup) {
+ result = createNewInstance(VerticalComponentGroupEditpart.class);
+ } else if (yElement instanceof VMTabSheet) {
+ result = createNewInstance(MobileTabSheetEditpart.class);
+ } else if (yElement instanceof VMTab) {
+ result = createNewInstance(MobileTabEditpart.class);
+ } else if (yElement instanceof VMNavigationPage) {
+ result = createNewInstance(NavigationPageEditpart.class);
+ } else if (yElement instanceof VMNavigationButton) {
+ result = createNewInstance(NavigationButtonEditpart.class);
+ } else if (yElement instanceof VMNavigationCommand) {
+ result = createNewInstance(NavigationCommandEditpart.class);
+ } else if (yElement instanceof VMSearchPanel) {
+ result = createNewInstance(MobileSearchPanelEditpart.class);
+ } else if (yElement instanceof VMNavigationRoot) {
+ result = createNewInstance(NavigationRootEditpart.class);
+ } else if (yElement instanceof VMNavigationBarButton) {
+ result = createNewInstance(NavigationBarButtonEditpart.class);
+ }
+
+ if (result != null) {
+ result.initialize(context, (YElement) yElement);
+ }
+
+ return (A) result;
+ }
+
+ /**
+ * Returns a new instance of the type.
+ *
+ * @param type
+ * The type of the editpart for which an instance should be
+ * created.
+ * @return editPart
+ * @throws InstantiationException
+ * e
+ * @throws IllegalAccessException
+ * e
+ */
+ protected IElementEditpart newInstance(
+ Class<? extends IElementEditpart> type)
+ throws InstantiationException, IllegalAccessException {
+ return type.newInstance();
+ }
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/HorizontalButtonGroupEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/HorizontalButtonGroupEditpart.java
new file mode 100644
index 0000000..5953f04
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/HorizontalButtonGroupEditpart.java
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+
+import org.eclipse.osbp.ecview.core.common.editpart.emf.LayoutEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.IHorizontalButtonGroupEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMHorizontalButtonGroup;
+
+/**
+ * The implementation of the IHorizontalButtonGroupEditpart.
+ */
+@SuppressWarnings("unchecked")
+public class HorizontalButtonGroupEditpart extends
+ LayoutEditpart<VMHorizontalButtonGroup> implements
+ IHorizontalButtonGroupEditpart {
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/MobileSearchPanelEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/MobileSearchPanelEditpart.java
new file mode 100644
index 0000000..08e569d
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/MobileSearchPanelEditpart.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.osbp.ecview.core.common.editpart.emf.LayoutEditpart;
+import org.eclipse.osbp.ecview.core.common.filter.IFilterProvidingPresentation;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileSearchPanelEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+/**
+ * The implementation of the ISearchPanelEditpart.
+ */
+@SuppressWarnings("unchecked")
+public class MobileSearchPanelEditpart extends LayoutEditpart<VMSearchPanel>
+ implements IMobileSearchPanelEditpart {
+
+ @Override
+ protected void handleModelSet(int featureId, Notification notification) {
+ switch (featureId) {
+ case VaadinMobilePackage.VM_SEARCH_PANEL__APPLY_FILTER:
+ applyFilter();
+ break;
+ default:
+ super.handleModelSet(featureId, notification);
+ }
+ }
+
+ /**
+ * Accesses the presentation to return the filter and puts the new filter in
+ * the model. So other parties can react for the changed filter.
+ */
+ private void applyFilter() {
+ IFilterProvidingPresentation presentation = (IFilterProvidingPresentation) getPresentation();
+ Object filter = presentation.getFilter();
+ getModel().setFilter(filter);
+ }
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/MobileTabEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/MobileTabEditpart.java
new file mode 100644
index 0000000..4bea69f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/MobileTabEditpart.java
@@ -0,0 +1,199 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+
+import org.eclipse.osbp.ecview.core.common.editpart.IViewEditpart;
+import org.eclipse.osbp.ecview.core.common.editpart.emf.ElementEditpart;
+import org.eclipse.osbp.ecview.core.common.editpart.emf.EmbeddableEditpart;
+import org.eclipse.osbp.ecview.core.common.model.core.YView;
+import org.eclipse.osbp.ecview.core.common.presentation.DelegatingPresenterFactory;
+import org.eclipse.osbp.ecview.core.common.presentation.IWidgetPresentation;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabSheetEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.presentation.IMobileTabPresentation;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The Class MobileTabEditpart.
+ */
+public class MobileTabEditpart extends ElementEditpart<VMTab> implements IMobileTabEditpart {
+
+ /** The Constant LOGGER. */
+ private static final Logger LOGGER = LoggerFactory
+ .getLogger(EmbeddableEditpart.class);
+
+ /** The presentation. */
+ private IMobileTabPresentation<?> presentation;
+
+ /**
+ * The default constructor.
+ */
+ protected MobileTabEditpart() {
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public IMobileTabSheetEditpart getParent() {
+ VMTabSheet yParent = getModel().getParent();
+ return yParent != null ? (IMobileTabSheetEditpart) getEditpart(viewContext, yParent)
+ : null;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabEditpart#getView()
+ */
+ @Override
+ public IViewEditpart getView() {
+ YView yView = getModel().getView();
+ return yView != null ? (IViewEditpart) getEditpart(viewContext, yView) : null;
+ }
+
+ /**
+ * Returns the instance of the presentation, but does not load it.
+ *
+ * @param <A>
+ * An instance of {@link IWidgetPresentation}
+ * @return presentation
+ */
+ @SuppressWarnings("unchecked")
+ protected <A extends IWidgetPresentation<?>> A internalGetPresentation() {
+ return (A) presentation;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabEditpart#getPresentation()
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public <A extends IMobileTabPresentation<?>> A getPresentation() {
+ if (presentation == null) {
+ presentation = createPresenter();
+ }
+ return (A) presentation;
+ }
+
+ /**
+ * Is called to created the presenter for this edit part.
+ *
+ * @param <A>
+ * the generic type
+ * @return the a
+ */
+ protected <A extends IWidgetPresentation<?>> A createPresenter() {
+ IViewEditpart viewEditPart = getView();
+ if (viewEditPart == null) {
+ LOGGER.info("View is null");
+ return null;
+ }
+ return DelegatingPresenterFactory.getInstance().createPresentation(
+ viewEditPart.getContext(), this);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected void internalDispose() {
+ try {
+ // if directly attached to a view, then remove it
+ IMobileTabSheetEditpart parent = getParent();
+ if (parent != null) {
+ parent.removeTab(this);
+ }
+
+ // dispose the presenter
+ //
+ if (presentation != null) {
+ presentation.dispose();
+ presentation = null;
+ }
+
+ } finally {
+ super.internalDispose();
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabEditpart#requestRender()
+ */
+ @Override
+ public void requestRender() {
+ if (getParent() != null) {
+ getParent().renderTab(this);
+ } else {
+ unrender();
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabEditpart#render(java.lang.Object)
+ */
+ @Override
+ public Object render(Object parentWidget) {
+ return getPresentation().createWidget(parentWidget);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabEditpart#requestUnrender()
+ */
+ @Override
+ public void requestUnrender() {
+ if (getParent() != null) {
+ getParent().unrenderTab(this);
+ } else {
+ unrender();
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabEditpart#unrender()
+ */
+ @Override
+ public void unrender() {
+ getPresentation().unrender();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabEditpart#isRendered()
+ */
+ @Override
+ public boolean isRendered() {
+ return internalGetPresentation() != null
+ && internalGetPresentation().isRendered();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabEditpart#getWidget()
+ */
+ @Override
+ public Object getWidget() {
+ return getPresentation().getWidget();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.editpart.emf.ElementEditpart#requestDispose()
+ */
+ @Override
+ public void requestDispose() {
+ if (getParent() != null) {
+ getParent().disposeTab(this);
+ } else {
+ dispose();
+ }
+ }
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/MobileTabSheetEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/MobileTabSheetEditpart.java
new file mode 100644
index 0000000..22e366b
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/MobileTabSheetEditpart.java
@@ -0,0 +1,293 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.osbp.ecview.core.common.editpart.emf.EmbeddableEditpart;
+import org.eclipse.osbp.ecview.core.common.editpart.emf.LayoutEditpart;
+import org.eclipse.osbp.ecview.core.common.editpart.validation.IValidatorEditpart;
+import org.eclipse.osbp.ecview.core.extension.model.extension.ExtensionModelPackage;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabSheetEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.presentation.IMobileTabSheetPresentation;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class MobileTabSheetEditpart extends EmbeddableEditpart<VMTabSheet>
+ implements IMobileTabSheetEditpart {
+
+ private static final Logger LOGGER = LoggerFactory
+ .getLogger(LayoutEditpart.class);
+ private List<IMobileTabEditpart> tabEditparts;
+
+ /**
+ * Default constructor.
+ */
+ public MobileTabSheetEditpart() {
+
+ }
+
+ @Override
+ public List<IMobileTabEditpart> getTabs() {
+ if (tabEditparts == null) {
+ internalLoadTabs();
+ }
+ return Collections.unmodifiableList(tabEditparts);
+ }
+
+ @Override
+ protected void internalDispose() {
+ try {
+ // lazy loading: edit parts also have to be disposed if they have
+ // not been loaded yet,
+ // but exist in the model.
+ if (tabEditparts != null || getModel().getTabs().size() > 0) {
+ List<IMobileTabEditpart> tempElements = getTabs();
+ synchronized (tabEditparts) {
+ for (IMobileTabEditpart editpart : tempElements
+ .toArray(new IMobileTabEditpart[tempElements.size()])) {
+ editpart.dispose();
+ }
+ }
+ tabEditparts = null;
+ }
+ } finally {
+ super.internalDispose();
+ }
+ }
+
+ @Override
+ public void addTab(IMobileTabEditpart element) {
+ try {
+ checkDisposed();
+
+ // add the element by using the model
+ //
+ VMTabSheet yLayout = getModel();
+ VMTab yTab = (VMTab) element.getModel();
+ yLayout.getTabs().add(yTab);
+ // BEGIN SUPRESS CATCH EXCEPTION
+ } catch (RuntimeException e) {
+ // END SUPRESS CATCH EXCEPTION
+ LOGGER.error("{}", e);
+ throw e;
+ }
+ }
+
+ @Override
+ public void removeTab(IMobileTabEditpart element) {
+ try {
+ checkDisposed();
+
+ // remove the element by using the model
+ //
+ VMTabSheet yLayout = getModel();
+ VMTab yTab = (VMTab) element.getModel();
+ yLayout.getTabs().remove(yTab);
+ // BEGIN SUPRESS CATCH EXCEPTION
+ } catch (RuntimeException e) {
+ // END SUPRESS CATCH EXCEPTION
+ LOGGER.error("{}", e);
+ throw e;
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ protected void handleModelAdd(int featureId, Notification notification) {
+ checkDisposed();
+
+ switch (featureId) {
+ case ExtensionModelPackage.YTAB_SHEET__TABS:
+ VMTab yTab = (VMTab) notification.getNewValue();
+
+ IMobileTabEditpart editPart = (IMobileTabEditpart) getEditpart(viewContext, yTab);
+ internalAddElement(editPart);
+
+ // handle the presentation
+ //
+ if (isPresentationPresent()) {
+ IMobileTabSheetPresentation<?> presenter = getPresentation();
+ int index = notification.getPosition();
+ if (index < 0 || index >= getTabs().size() - 1) {
+ presenter.add(editPart);
+ } else {
+ presenter.insert(editPart, index);
+ }
+ }
+ break;
+ default:
+ break;
+ }
+ }
+
+ @Override
+ protected void handleModelMove(int featureId, Notification notification) {
+ checkDisposed();
+
+ switch (featureId) {
+ case ExtensionModelPackage.YTAB_SHEET__TABS:
+ VMTab yTab = (VMTab) notification.getNewValue();
+
+ IMobileTabEditpart editPart = (IMobileTabEditpart) getEditpart(viewContext, yTab);
+ internalMoveTab(editPart, notification.getPosition());
+
+ // handle the presentation
+ //
+ if (isPresentationPresent()) {
+ IMobileTabSheetPresentation<?> presenter = getPresentation();
+ presenter.move(editPart, notification.getPosition());
+ }
+ break;
+ default:
+ break;
+ }
+ }
+
+ /**
+ * Returns true, if the presenter is present.
+ *
+ * @return
+ */
+ private boolean isPresentationPresent() {
+ return internalGetPresentation() != null;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ protected void handleModelRemove(int featureId, Notification notification) {
+ checkDisposed();
+
+ switch (featureId) {
+ case ExtensionModelPackage.YTAB_SHEET__TABS:
+ VMTab yTab = (VMTab) notification.getOldValue();
+
+ IMobileTabEditpart editPart = (IMobileTabEditpart) getEditpart(viewContext, yTab);
+ internalRemoveTab(editPart);
+
+ // handle the presentation
+ //
+ if (isPresentationPresent()) {
+ IMobileTabSheetPresentation<?> presenter = getPresentation();
+ presenter.remove(editPart);
+ }
+ break;
+ default:
+ break;
+ }
+ }
+
+ /**
+ * Is called to change the internal state and add the given editpart to the
+ * list of tabs.
+ *
+ * @param editpart
+ * The editpart to be added
+ */
+ protected void internalAddElement(IMobileTabEditpart editpart) {
+ checkDisposed();
+
+ if (tabEditparts == null) {
+ internalLoadTabs();
+ }
+ if (!tabEditparts.contains(editpart)) {
+ tabEditparts.add(editpart);
+ }
+ }
+
+ /**
+ * Is called to change the internal state and to move the given editpart in
+ * the list of tabs.
+ *
+ * @param editpart
+ * The editpart to be inserted
+ * @param index
+ * The index to move the element.
+ */
+ protected void internalMoveTab(IMobileTabEditpart editpart, int index) {
+ checkDisposed();
+
+ if (tabEditparts == null) {
+ internalLoadTabs();
+ } else if (!tabEditparts.contains(editpart)) {
+ throw new RuntimeException(String.format(
+ "Editpart %s is not contained in tabs", editpart.getId()));
+ } else {
+ tabEditparts.remove(editpart);
+ tabEditparts.add(index, editpart);
+ }
+ }
+
+ /**
+ * Is called to change the internal state and remove the given editpart from
+ * the list of tabs.
+ *
+ * @param editpart
+ * The editpart to be removed
+ */
+ protected void internalRemoveTab(IMobileTabEditpart editpart) {
+ checkDisposed();
+
+ if (tabEditparts != null && editpart != null) {
+ tabEditparts.remove(editpart);
+ }
+ }
+
+ /**
+ * Is called to load and initialize all tabs.
+ */
+ protected void internalLoadTabs() {
+ checkDisposed();
+
+ if (tabEditparts == null) {
+ tabEditparts = new ArrayList<IMobileTabEditpart>();
+ for (VMTab yTab : getModel().getTabs()) {
+ IMobileTabEditpart editPart = getEditpart(viewContext, yTab);
+ internalAddElement(editPart);
+ }
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ @Override
+ public IMobileTabSheetPresentation<?> getPresentation() {
+ return super.getPresentation();
+ }
+
+ @Override
+ public List<IValidatorEditpart> getDatatypeValidators() {
+ return Collections.emptyList();
+ }
+
+ @Override
+ public void renderTab(IMobileTabEditpart mobileTabEditpart) {
+ getPresentation().add(mobileTabEditpart);
+ }
+
+ @Override
+ public void disposeTab(IMobileTabEditpart mobileTabEditpart) {
+ getPresentation().remove(mobileTabEditpart);
+ mobileTabEditpart.dispose();
+ }
+
+ @Override
+ public void unrenderTab(IMobileTabEditpart mobileTabEditpart) {
+ getPresentation().remove(mobileTabEditpart);
+ }
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationBarButtonEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationBarButtonEditpart.java
new file mode 100644
index 0000000..257ab54
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationBarButtonEditpart.java
@@ -0,0 +1,30 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+
+import org.eclipse.osbp.ecview.core.common.editpart.emf.ActionEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationBarButtonEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobileFactory;
+
+/**
+ * The implementation of the IMobileNavigationPageEditpart.
+ */
+public class NavigationBarButtonEditpart extends
+ ActionEditpart<VMNavigationBarButton> implements
+ INavigationBarButtonEditpart {
+
+ protected VMNavigationBarButton createModel() {
+ return (VMNavigationBarButton) VaadinMobileFactory.eINSTANCE
+ .createVMNavigationBarButton();
+ }
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationButtonEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationButtonEditpart.java
new file mode 100644
index 0000000..c714fbd
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationButtonEditpart.java
@@ -0,0 +1,35 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+
+import org.eclipse.osbp.ecview.core.common.editpart.emf.ActionEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationButtonEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationPageEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobileFactory;
+
+/**
+ * The implementation of the IMobileNavigationPageEditpart.
+ */
+public class NavigationButtonEditpart extends
+ ActionEditpart<VMNavigationButton> implements INavigationButtonEditpart {
+
+ protected VMNavigationButton createModel() {
+ return (VMNavigationButton) VaadinMobileFactory.eINSTANCE
+ .createVMNavigationButton();
+ }
+
+ @Override
+ public INavigationPageEditpart getPage() {
+ return getEditpart(viewContext, getModel().getPage());
+ }
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationCommandEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationCommandEditpart.java
new file mode 100644
index 0000000..34ffd35
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationCommandEditpart.java
@@ -0,0 +1,113 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+
+import org.eclipse.core.databinding.Binding;
+import org.eclipse.core.databinding.UpdateValueStrategy;
+import org.eclipse.core.databinding.beans.PojoObservables;
+import org.eclipse.core.databinding.observable.value.IObservableValue;
+import org.eclipse.osbp.ecview.core.common.binding.IECViewBindingManager;
+import org.eclipse.osbp.ecview.core.common.editpart.binding.IBindableEndpointEditpart;
+import org.eclipse.osbp.ecview.core.common.editpart.binding.IBindableValueEndpointEditpart;
+import org.eclipse.osbp.ecview.core.common.editpart.emf.CommandEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationCommandEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationHandler;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationPageEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The implementation of the IHorizontalButtonGroupEditpart.
+ */
+public class NavigationCommandEditpart extends
+ CommandEditpart<VMNavigationCommand> implements
+ INavigationCommandEditpart {
+
+ /** The Constant LOGGER. */
+ private static final Logger LOGGER = LoggerFactory.getLogger(NavigationCommandEditpart.class);
+
+ /** The binding. */
+ private Binding binding;
+
+ /** The activated. */
+ private boolean activated;
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.editpart.ICommandEditpart#activate()
+ */
+ @Override
+ public void activate() {
+ // bind the values
+ IECViewBindingManager bindingManager = getView().getContext()
+ .getService(IECViewBindingManager.class.getName());
+ IBindableValueEndpointEditpart modelValueEditpart = (IBindableValueEndpointEditpart) getEditpart(viewContext, getModel()
+ .createNavigationValueEndpoint());
+ IObservableValue modelObservable = modelValueEditpart.getObservable();
+ IObservableValue targetObservable = PojoObservables.observeValue(this,
+ "value");
+ binding = bindingManager.bindValue(targetObservable, modelObservable,
+ new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER),
+ new UpdateValueStrategy(UpdateValueStrategy.POLICY_UPDATE));
+ activated = true;
+ }
+
+ /**
+ * Setting a value will trigger the command execution.
+ *
+ * @param value
+ * the new value
+ */
+ public void setValue(Object value) {
+ // execute the command
+ if (activated && value != null) {
+ execute();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected void internalDispose() {
+ try {
+ if (binding != null) {
+ binding.dispose();
+ binding = null;
+ }
+ } finally {
+ super.internalDispose();
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.editpart.ICommandEditpart#execute()
+ */
+ @Override
+ public void execute() {
+ checkDisposed();
+
+ VMNavigationCommand model = getModel();
+ INavigationPageEditpart targetEditpart = getEditpart(viewContext, model
+ .getTargetPage());
+ INavigationHandler navHandler = getEditpart(viewContext, model
+ .getNavigationHandler());
+ IBindableEndpointEditpart bindableEndpoint = getEditpart(viewContext, model
+ .createNavigationValueEndpoint());
+
+ try {
+ navHandler.navigateTo(targetEditpart, bindableEndpoint);
+ } catch (Exception e) {
+ LOGGER.error("{}", e);
+ }
+ }
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationPageEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationPageEditpart.java
new file mode 100644
index 0000000..b2ad0ef
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationPageEditpart.java
@@ -0,0 +1,361 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Date;
+import java.util.List;
+
+import org.eclipse.core.databinding.Binding;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.osbp.ecview.core.common.editpart.binding.IBindableEndpointEditpart;
+import org.eclipse.osbp.ecview.core.common.editpart.emf.LayoutEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationBarButtonEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationPageEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.presentation.INavigationPagePresentation;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+import org.eclipse.osbp.runtime.common.metric.TimeLogger;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The implementation of the IMobileNavigationPageEditpart.
+ */
+@SuppressWarnings("unchecked")
+public class NavigationPageEditpart extends LayoutEditpart<VMNavigationPage>
+ implements INavigationPageEditpart {
+
+ /** The Constant LOGGER. */
+ private static final Logger LOGGER = LoggerFactory
+ .getLogger(NavigationPageEditpart.class);
+
+ /** The binding. */
+ private Binding binding;
+
+ /** The ui bar button editparts. */
+ private List<INavigationBarButtonEditpart> uiBarButtonEditparts;
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.editpart.emf.EmbeddableEditpart#render(java.lang.Object)
+ */
+ @Override
+ public Object render(Object parentWidget) {
+ INavigationPagePresentation<?> presentation = (INavigationPagePresentation<?>) getPresentation();
+ return presentation.createWidget(parentWidget);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationPageEditpart#setInputDataBindingEndpoint(org.eclipse.osbp.ecview.core.common.editpart.binding.IBindableEndpointEditpart)
+ */
+ @Override
+ public void setInputDataBindingEndpoint(
+ IBindableEndpointEditpart bindingEndpoint) {
+ INavigationPagePresentation<?> presentation = (INavigationPagePresentation<?>) getPresentation();
+ presentation.setInputDataBindingEndpoint(bindingEndpoint);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationHandler#navigateTo(org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationPageEditpart, org.eclipse.osbp.ecview.core.common.editpart.binding.IBindableEndpointEditpart)
+ */
+ @Override
+ public void navigateTo(INavigationPageEditpart targetPage,
+ IBindableEndpointEditpart bindingEndpoint) {
+ checkDisposed();
+
+ TimeLogger log = TimeLogger.start(getClass());
+ // navigate to the target
+ INavigationPagePresentation<?> presentation = (INavigationPagePresentation<?>) getPresentation();
+ presentation.navigateTo(targetPage, bindingEndpoint);
+ log.stop("Navigation took ");
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationHandler#navigateBack()
+ */
+ @Override
+ public void navigateBack() {
+ checkDisposed();
+
+ if (isPresentationPresent()) {
+ // navigate back
+ INavigationPagePresentation<?> presentation = (INavigationPagePresentation<?>) getPresentation();
+ presentation.navigateBack();
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationHandler#notifyBackNavigation()
+ */
+ @Override
+ public void notifyBackNavigation() {
+ getModel().setOnNavigateBack(new Date().getTime());
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationPageEditpart#getBarButtons()
+ */
+ public List<INavigationBarButtonEditpart> getBarButtons() {
+ if (uiBarButtonEditparts == null) {
+ internalLoadBarButtons();
+ }
+ return Collections.unmodifiableList(uiBarButtonEditparts);
+ }
+
+ /**
+ * Adds the bar button.
+ *
+ * @param element
+ * the element
+ */
+ public void addBarButton(INavigationBarButtonEditpart element) {
+ try {
+ checkDisposed();
+
+ // add the element by using the model
+ //
+ VMNavigationPage yLayout = getModel();
+ VMNavigationBarButton yBarButton = (VMNavigationBarButton) element
+ .getModel();
+ yLayout.getBarActions().add(yBarButton);
+ // BEGIN SUPRESS CATCH EXCEPTION
+ } catch (RuntimeException e) {
+ // END SUPRESS CATCH EXCEPTION
+ LOGGER.error("{}", e);
+ throw e;
+ }
+ }
+
+ /**
+ * Removes the bar button.
+ *
+ * @param element
+ * the element
+ */
+ public void removeBarButton(INavigationBarButtonEditpart element) {
+ try {
+ checkDisposed();
+
+ // remove the element by using the model
+ //
+ VMNavigationPage yLayout = getModel();
+ VMNavigationBarButton yBarButton = (VMNavigationBarButton) element
+ .getModel();
+ yLayout.getBarActions().remove(yBarButton);
+ // BEGIN SUPRESS CATCH EXCEPTION
+ } catch (RuntimeException e) {
+ // END SUPRESS CATCH EXCEPTION
+ LOGGER.error("{}", e);
+ throw e;
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ protected void handleModelAdd(int featureId, Notification notification) {
+ checkDisposed();
+
+ switch (featureId) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__BAR_ACTIONS:
+ VMNavigationBarButton yBarButton = (VMNavigationBarButton) notification
+ .getNewValue();
+
+ INavigationBarButtonEditpart editPart = (INavigationBarButtonEditpart) getEditpart(viewContext, yBarButton);
+ internalAddBarButton(editPart);
+
+ // handle the presentation
+ //
+ if (isPresentationPresent()) {
+ INavigationPagePresentation<?> presenter = (INavigationPagePresentation<?>) getPresentation();
+ int index = notification.getPosition();
+ if (index < 0 || index >= getBarButtons().size() - 1) {
+ presenter.addBarAction(editPart);
+ } else {
+ presenter.insertBarAction(editPart, index);
+ }
+ }
+ break;
+ default:
+ super.handleModelAdd(featureId, notification);
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.editpart.emf.LayoutEditpart#handleModelMove(int, org.eclipse.emf.common.notify.Notification)
+ */
+ @Override
+ protected void handleModelMove(int featureId, Notification notification) {
+ checkDisposed();
+
+ switch (featureId) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__BAR_ACTIONS:
+ VMNavigationBarButton yBarButton = (VMNavigationBarButton) notification
+ .getNewValue();
+
+ INavigationBarButtonEditpart editPart = (INavigationBarButtonEditpart) getEditpart(viewContext, yBarButton);
+ internalMoveBarButton(editPart, notification.getPosition());
+
+ // handle the presentation
+ //
+ if (isPresentationPresent()) {
+ INavigationPagePresentation<?> presenter = (INavigationPagePresentation<?>) getPresentation();
+ presenter.moveBarAction(editPart, notification.getPosition());
+ }
+ break;
+ default:
+ super.handleModelMove(featureId, notification);
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.editpart.emf.LayoutEditpart#handleModelSet(int, org.eclipse.emf.common.notify.Notification)
+ */
+ @Override
+ protected void handleModelSet(int featureId, Notification notification) {
+ checkDisposed();
+
+ switch (featureId) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__NAVIGATE_BACK:
+ navigateBack();
+ break;
+ default:
+ super.handleModelMove(featureId, notification);
+ }
+ }
+
+ /**
+ * Returns true, if the presenter is present.
+ *
+ * @return true, if is presentation present
+ */
+ protected boolean isPresentationPresent() {
+ return internalGetPresentation() != null;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ protected void handleModelRemove(int featureId, Notification notification) {
+ checkDisposed();
+
+ switch (featureId) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__BAR_ACTIONS:
+ VMNavigationBarButton yBarButton = (VMNavigationBarButton) notification
+ .getOldValue();
+
+ INavigationBarButtonEditpart editPart = (INavigationBarButtonEditpart) getEditpart(viewContext, yBarButton);
+ internalRemoveBarButton(editPart);
+
+ // handle the presentation
+ //
+ if (isPresentationPresent()) {
+ INavigationPagePresentation<?> presenter = (INavigationPagePresentation<?>) getPresentation();
+ presenter.removeBarAction(editPart);
+ }
+ editPart.unrender();
+ break;
+ default:
+ super.handleModelRemove(featureId, notification);
+ }
+ }
+
+ /**
+ * Is called to change the internal state and add the given editpart to the
+ * list of elements.
+ *
+ * @param editpart
+ * The editpart to be added
+ */
+ protected void internalAddBarButton(INavigationBarButtonEditpart editpart) {
+ checkDisposed();
+
+ if (uiBarButtonEditparts == null) {
+ internalLoadBarButtons();
+ }
+ if (!uiBarButtonEditparts.contains(editpart)) {
+ uiBarButtonEditparts.add(editpart);
+ }
+ }
+
+ /**
+ * Is called to change the internal state and to move the given editpart in
+ * the list of elements.
+ *
+ * @param editpart
+ * The editpart to be inserted
+ * @param index
+ * The index to move the element.
+ */
+ protected void internalMoveBarButton(INavigationBarButtonEditpart editpart,
+ int index) {
+ checkDisposed();
+
+ if (uiBarButtonEditparts == null) {
+ internalLoadBarButtons();
+ } else if (!uiBarButtonEditparts.contains(editpart)) {
+ throw new RuntimeException(String.format(
+ "Editpart %s is not contained in elements",
+ editpart.getId()));
+ } else {
+ uiBarButtonEditparts.remove(editpart);
+ uiBarButtonEditparts.add(index, editpart);
+ }
+ }
+
+ /**
+ * Is called to change the internal state and remove the given editpart from
+ * the list of elements.
+ *
+ * @param editpart
+ * The editpart to be removed
+ */
+ protected void internalRemoveBarButton(INavigationBarButtonEditpart editpart) {
+ checkDisposed();
+
+ if (uiBarButtonEditparts != null && editpart != null) {
+ uiBarButtonEditparts.remove(editpart);
+ }
+ }
+
+ /**
+ * Is called to load and initialize all elements.
+ */
+ protected void internalLoadBarButtons() {
+ checkDisposed();
+
+ if (uiBarButtonEditparts == null) {
+ uiBarButtonEditparts = new ArrayList<INavigationBarButtonEditpart>();
+ for (VMNavigationBarButton yBarButton : getModel().getBarActions()) {
+ INavigationBarButtonEditpart editPart = getEditpart(viewContext, yBarButton);
+ internalAddBarButton(editPart);
+ }
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.editpart.emf.LayoutEditpart#internalDispose()
+ */
+ @Override
+ protected void internalDispose() {
+ try {
+ if (binding != null) {
+ binding.dispose();
+ binding = null;
+ }
+ } finally {
+ super.internalDispose();
+ }
+ }
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationRootEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationRootEditpart.java
new file mode 100644
index 0000000..b9c26a0
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/NavigationRootEditpart.java
@@ -0,0 +1,24 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+
+import org.eclipse.osbp.ecview.core.common.editpart.emf.LayoutEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationRootEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationRoot;
+
+/**
+ * The implementation of the IHorizontalButtonGroupEditpart.
+ */
+@SuppressWarnings("unchecked")
+public class NavigationRootEditpart extends LayoutEditpart<VMNavigationRoot>
+ implements INavigationRootEditpart {
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/SwitchEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/SwitchEditpart.java
new file mode 100644
index 0000000..cba4f5f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/SwitchEditpart.java
@@ -0,0 +1,23 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+
+import org.eclipse.osbp.ecview.core.common.editpart.emf.FieldEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.ISwitchEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch;
+
+/**
+ * The implementation of the IHorizontalButtonGroupEditpart.
+ */
+public class SwitchEditpart extends FieldEditpart<VMSwitch> implements
+ ISwitchEditpart {
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/VerticalComponentGroupEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/VerticalComponentGroupEditpart.java
new file mode 100644
index 0000000..2bf62e1
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/emf/VerticalComponentGroupEditpart.java
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf;
+
+import org.eclipse.osbp.ecview.core.common.editpart.emf.LayoutEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.IVerticalComponentGroupEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMVerticalComponentGroup;
+
+/**
+ * The implementation of the IVerticalComponentGroupEditpart.
+ */
+@SuppressWarnings("unchecked")
+public class VerticalComponentGroupEditpart extends
+ LayoutEditpart<VMVerticalComponentGroup> implements
+ IVerticalComponentGroupEditpart {
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/.checkstyle b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/.checkstyle
new file mode 100644
index 0000000..2f2667a
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/.checkstyle
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <fileset name="all" enabled="true" check-config-name="emfstoreStyle" local="false">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ </fileset>
+</fileset-config>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/.project b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/.project
new file mode 100644
index 0000000..b323619
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/.project
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.osbp.mobile.vaadin.ecview.editparts</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <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>
+ <buildCommand>
+ <name>org.eclipse.babel.editor.rbeBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.sonarlint.eclipse.core.sonarlintBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.babel.editor.rbeNature</nature>
+ </natures>
+</projectDescription>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/LICENSE.txt b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/LICENSE.txt
new file mode 100644
index 0000000..ff42ad4
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/LICENSE.txt
@@ -0,0 +1,161 @@
+Eclipse Public License -v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION
+OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor.
+A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone
+acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate
+modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not
+derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of
+its Contribution alone or when combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute
+and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code
+form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the
+Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the
+combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such
+addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not
+apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no
+assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity
+based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property
+rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the
+Program, it is Recipient's responsibility to acquire that license before distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to
+grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including
+warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and
+fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any
+other party; and
+
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it
+in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and
+the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes
+the Program in a commercial product offering should do so in a manner which does not create potential liability for
+other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions
+brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such
+Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual
+property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the
+Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may
+ participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is
+then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties
+related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone.
+Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to
+those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result,
+the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR
+CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE,
+NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for
+determining the appropriateness of using and distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance
+with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS),
+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such
+provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such
+Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such
+litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such
+noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution
+of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses
+ granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement
+is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish
+new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the
+right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the
+Agreement will be given a distinguishing version number. The Program (including Contributions) may always be
+distributed subject to the version of the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the
+new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States
+of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause
+of action arose. Each party waives its rights to a jury trial in any resulting litigation. \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/META-INF/MANIFEST.MF b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..c1a273b
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/META-INF/MANIFEST.MF
@@ -0,0 +1,22 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: org.eclipse.osbp.mobile.vaadin.ecview.editparts
+Bundle-SymbolicName: org.eclipse.osbp.mobile.vaadin.ecview.editparts
+Bundle-Vendor: Eclipse OSBP
+Bundle-Version: 0.9.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Import-Package: org.osgi.service.component;version="1.2.0",
+ org.slf4j
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+ uses:="org.eclipse.osbp.ecview.core.common.editpart.binding,
+ org.eclipse.osbp.ecview.core.common.editpart";version="0.9.0",
+ org.eclipse.osbp.mobile.vaadin.ecview.editparts.presentation;
+ uses:="org.eclipse.osbp.ecview.core.common.editpart.binding,
+ org.eclipse.osbp.ecview.core.common.presentation,
+ org.eclipse.osbp.mobile.vaadin.ecview.editparts";version="0.9.0"
+Require-Bundle: org.eclipse.osbp.ecview.core.common;bundle-version="[0.9.0,0.10.0)",
+ org.eclipse.osbp.ecview.core.common.model;bundle-version="0.9.0",
+ org.eclipse.core.databinding;bundle-version="1.4.1",
+ org.eclipse.osbp.ecview.core.extension.editparts;bundle-version="[0.9.0,0.10.0)",
+ org.eclipse.osbp.runtime.common;bundle-version="[0.9.0,0.10.0)"
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.html b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.html
new file mode 100644
index 0000000..64c0598
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/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>June 1, 2016</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/org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.ini b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.ini
new file mode 100644
index 0000000..7df671f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.ini
@@ -0,0 +1,17 @@
+# about.ini
+# contains information about a feature
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# "%key" are externalized strings defined in about.properties
+# This file does not need to be translated.
+
+# Property "aboutText" contains blurb for "About" dialog (translated)
+aboutText=%featureText
+
+# Property "featureImage" contains path to feature image (32x32)
+featureImage=
+
+# Property "appName" contains name of the application (translated)
+appName=%featureName
+
+# Property "welcomePage" contains path to welcome page (special XML-based format)
+welcomePage=
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.mappings b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.mappings
new file mode 100644
index 0000000..4511a0a
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.mappings
@@ -0,0 +1,6 @@
+# about.mappings
+# contains fill-ins for about.properties
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# This file does not need to be translated.
+
+0=qualifier
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.properties b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.properties
new file mode 100644
index 0000000..6436c4f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/about.properties
@@ -0,0 +1,26 @@
+#
+# Copyright (c) 2012, 2016 - Loetz GmbH&Co.KG (Heidelberg)
+# 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:
+# Christophe Loetz (Loetz GmbH&Co.KG) - initial API and implementation
+#
+
+# NLS_MESSAGEFORMAT_VAR
+
+featureName=org.eclipse.osbp.mobile.vaadin.ecview.editparts
+
+################ blurb property ####################################
+featureText=\
+Copyright (c) 2012-2016 - Loetz GmbH&Co.KG \n\
+All rights reserved. This program and the accompanying materials\n\
+are made available under the terms of the Eclipse Public License v1.0\n\
+which accompanies this distribution, and is available at\n\
+http://www.eclipse.org/legal/epl-v10.html\n\
+\n\
+Contributors:\n\
+ Christophe Loetz (Loetz GmbH&Co.KG) - initial implementation\n
+################ end of blurb property ####################################
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/build.properties b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/build.properties
new file mode 100644
index 0000000..6509591
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/build.properties
@@ -0,0 +1,10 @@
+source.. = src/
+bin.includes = about.properties, about.mappings, about.ini, about.html, META-INF/,\
+ .,\
+ LICENSE.txt,\
+ epl-v10.html,\
+ license.html
+output.. = target/classes
+src.includes = about.properties, about.mappings, about.ini, about.html, epl-v10.html,\
+ license.html,\
+ LICENSE.txt
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/epl-v10.html b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/epl-v10.html
new file mode 100644
index 0000000..b398acc
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/epl-v10.html
@@ -0,0 +1,259 @@
+<!--?xml version="1.0" encoding="ISO-8859-1" ?-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Eclipse Public License - Version 1.0</title>
+<style type="text/css">
+ body {
+ size: 8.5in 11.0in;
+ margin: 0.25in 0.5in 0.25in 0.5in;
+ tab-interval: 0.5in;
+ }
+ p {
+ margin-left: auto;
+ margin-top: 0.5em;
+ margin-bottom: 0.5em;
+ }
+ p.list {
+ margin-left: 0.5in;
+ margin-top: 0.05em;
+ margin-bottom: 0.05em;
+ }
+ </style>
+
+</head>
+
+<body lang="EN-US">
+
+<h2>Eclipse Public License - v 1.0</h2>
+
+<p>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
+PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR
+DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS
+AGREEMENT.</p>
+
+<p><b>1. DEFINITIONS</b></p>
+
+<p>"Contribution" means:</p>
+
+<p class="list">a) in the case of the initial Contributor, the initial
+code and documentation distributed under this Agreement, and</p>
+<p class="list">b) in the case of each subsequent Contributor:</p>
+<p class="list">i) changes to the Program, and</p>
+<p class="list">ii) additions to the Program;</p>
+<p class="list">where such changes and/or additions to the Program
+originate from and are distributed by that particular Contributor. A
+Contribution 'originates' from a Contributor if it was added to the
+Program by such Contributor itself or anyone acting on such
+Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in
+conjunction with the Program under their own license agreement, and (ii)
+are not derivative works of the Program.</p>
+
+<p>"Contributor" means any person or entity that distributes
+the Program.</p>
+
+<p>"Licensed Patents" mean patent claims licensable by a
+Contributor which are necessarily infringed by the use or sale of its
+Contribution alone or when combined with the Program.</p>
+
+<p>"Program" means the Contributions distributed in accordance
+with this Agreement.</p>
+
+<p>"Recipient" means anyone who receives the Program under
+this Agreement, including all Contributors.</p>
+
+<p><b>2. GRANT OF RIGHTS</b></p>
+
+<p class="list">a) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works
+of, publicly display, publicly perform, distribute and sublicense the
+Contribution of such Contributor, if any, and such derivative works, in
+source code and object code form.</p>
+
+<p class="list">b) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell,
+offer to sell, import and otherwise transfer the Contribution of such
+Contributor, if any, in source code and object code form. This patent
+license shall apply to the combination of the Contribution and the
+Program if, at the time the Contribution is added by the Contributor,
+such addition of the Contribution causes such combination to be covered
+by the Licensed Patents. The patent license shall not apply to any other
+combinations which include the Contribution. No hardware per se is
+licensed hereunder.</p>
+
+<p class="list">c) Recipient understands that although each Contributor
+grants the licenses to its Contributions set forth herein, no assurances
+are provided by any Contributor that the Program does not infringe the
+patent or other intellectual property rights of any other entity. Each
+Contributor disclaims any liability to Recipient for claims brought by
+any other entity based on infringement of intellectual property rights
+or otherwise. As a condition to exercising the rights and licenses
+granted hereunder, each Recipient hereby assumes sole responsibility to
+secure any other intellectual property rights needed, if any. For
+example, if a third party patent license is required to allow Recipient
+to distribute the Program, it is Recipient's responsibility to acquire
+that license before distributing the Program.</p>
+
+<p class="list">d) Each Contributor represents that to its knowledge it
+has sufficient copyright rights in its Contribution, if any, to grant
+the copyright license set forth in this Agreement.</p>
+
+<p><b>3. REQUIREMENTS</b></p>
+
+<p>A Contributor may choose to distribute the Program in object code
+form under its own license agreement, provided that:</p>
+
+<p class="list">a) it complies with the terms and conditions of this
+Agreement; and</p>
+
+<p class="list">b) its license agreement:</p>
+
+<p class="list">i) effectively disclaims on behalf of all Contributors
+all warranties and conditions, express and implied, including warranties
+or conditions of title and non-infringement, and implied warranties or
+conditions of merchantability and fitness for a particular purpose;</p>
+
+<p class="list">ii) effectively excludes on behalf of all Contributors
+all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;</p>
+
+<p class="list">iii) states that any provisions which differ from this
+Agreement are offered by that Contributor alone and not by any other
+party; and</p>
+
+<p class="list">iv) states that source code for the Program is available
+from such Contributor, and informs licensees how to obtain it in a
+reasonable manner on or through a medium customarily used for software
+exchange.</p>
+
+<p>When the Program is made available in source code form:</p>
+
+<p class="list">a) it must be made available under this Agreement; and</p>
+
+<p class="list">b) a copy of this Agreement must be included with each
+copy of the Program.</p>
+
+<p>Contributors may not remove or alter any copyright notices contained
+within the Program.</p>
+
+<p>Each Contributor must identify itself as the originator of its
+Contribution, if any, in a manner that reasonably allows subsequent
+Recipients to identify the originator of the Contribution.</p>
+
+<p><b>4. COMMERCIAL DISTRIBUTION</b></p>
+
+<p>Commercial distributors of software may accept certain
+responsibilities with respect to end users, business partners and the
+like. While this license is intended to facilitate the commercial use of
+the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create
+potential liability for other Contributors. Therefore, if a Contributor
+includes the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and
+indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses")
+arising from claims, lawsuits and other legal actions brought by a third
+party against the Indemnified Contributor to the extent caused by the
+acts or omissions of such Commercial Contributor in connection with its
+distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In
+order to qualify, an Indemnified Contributor must: a) promptly notify
+the Commercial Contributor in writing of such claim, and b) allow the
+Commercial Contributor to control, and cooperate with the Commercial
+Contributor in, the defense and any related settlement negotiations. The
+Indemnified Contributor may participate in any such claim at its own
+expense.</p>
+
+<p>For example, a Contributor might include the Program in a commercial
+product offering, Product X. That Contributor is then a Commercial
+Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance
+claims and warranties are such Commercial Contributor's responsibility
+alone. Under this section, the Commercial Contributor would have to
+defend claims against the other Contributors related to those
+performance claims and warranties, and if a court requires any other
+Contributor to pay any damages as a result, the Commercial Contributor
+must pay those damages.</p>
+
+<p><b>5. NO WARRANTY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
+PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION,
+ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
+OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and
+distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to
+the risks and costs of program errors, compliance with applicable laws,
+damage to or loss of data, programs or equipment, and unavailability or
+interruption of operations.</p>
+
+<p><b>6. DISCLAIMER OF LIABILITY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT
+NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
+WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
+DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p>
+
+<p><b>7. GENERAL</b></p>
+
+<p>If any provision of this Agreement is invalid or unenforceable under
+applicable law, it shall not affect the validity or enforceability of
+the remainder of the terms of this Agreement, and without further action
+by the parties hereto, such provision shall be reformed to the minimum
+extent necessary to make such provision valid and enforceable.</p>
+
+<p>If Recipient institutes patent litigation against any entity
+(including a cross-claim or counterclaim in a lawsuit) alleging that the
+Program itself (excluding combinations of the Program with other
+software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the
+date such litigation is filed.</p>
+
+<p>All Recipient's rights under this Agreement shall terminate if it
+fails to comply with any of the material terms or conditions of this
+Agreement and does not cure such failure in a reasonable period of time
+after becoming aware of such noncompliance. If all Recipient's rights
+under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive.</p>
+
+<p>Everyone is permitted to copy and distribute copies of this
+Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The
+Agreement Steward reserves the right to publish new versions (including
+revisions) of this Agreement from time to time. No one other than the
+Agreement Steward has the right to modify this Agreement. The Eclipse
+Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a
+suitable separate entity. Each new version of the Agreement will be
+given a distinguishing version number. The Program (including
+Contributions) may always be distributed subject to the version of the
+Agreement under which it was received. In addition, after a new version
+of the Agreement is published, Contributor may elect to distribute the
+Program (including its Contributions) under the new version. Except as
+expressly stated in Sections 2(a) and 2(b) above, Recipient receives no
+rights or licenses to the intellectual property of any Contributor under
+this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this
+Agreement are reserved.</p>
+
+<p>This Agreement is governed by the laws of the State of New York and
+the intellectual property laws of the United States of America. No party
+to this Agreement will bring a legal action under this Agreement more
+than one year after the cause of action arose. Each party waives its
+rights to a jury trial in any resulting litigation.</p>
+
+
+
+</body></html> \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/license.html b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/license.html
new file mode 100644
index 0000000..6e579a5
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/license.html
@@ -0,0 +1,164 @@
+<!--?xml version="1.0" encoding="ISO-8859-1" ?-->
+<!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>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>February 1, 2011</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+ (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
+ CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE
+ OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
+ NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
+ CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>Unless otherwise indicated, all Content made available by the Eclipse
+ Foundation is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0
+ ("EPL"). A copy of the EPL is provided with this Content and is also
+ 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, "Program" will mean the Content.</p>
+
+<p>Content includes, but is not limited to, source code, object code,
+documentation and other files maintained in the Eclipse Foundation
+source code
+ repository ("Repository") in software modules ("Modules") and made
+available as downloadable archives ("Downloads").</p>
+
+<ul>
+ <li>Content may be structured and packaged into modules to
+facilitate delivering, extending, and upgrading the Content. Typical
+modules may include plug-ins ("Plug-ins"), plug-in fragments
+("Fragments"), and features ("Features").</li>
+ <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&#8482; ARchive) in a directory named "plugins".</li>
+ <li>A Feature is a bundle of one or more Plug-ins and/or
+Fragments and associated material. Each Feature may be packaged as a
+sub-directory in a directory named "features". Within a Feature, files
+named "feature.xml" may contain a list of the names and version numbers
+of the Plug-ins
+ and/or Fragments associated with that Feature.</li>
+ <li>Features may also include other Features ("Included
+Features"). Within a Feature, files named "feature.xml" may contain a
+list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be
+contained in files named "about.html" ("Abouts"). The terms and
+conditions governing Features and
+Included Features should be contained in files named "license.html"
+("Feature Licenses"). Abouts and Feature Licenses may be located in any
+ directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+ <li>The top-level (root) directory</li>
+ <li>Plug-in and Fragment directories</li>
+ <li>Inside Plug-ins and Fragments packaged as JARs</li>
+ <li>Sub-directories of the directory named "src" of certain Plug-ins</li>
+ <li>Feature directories</li>
+</ul>
+
+<p>Note: if a Feature made available by the Eclipse Foundation is
+installed using the Provisioning Technology (as defined below), you must
+ agree to a license ("Feature Update License") during the
+installation process. If the Feature contains Included Features, the
+Feature Update License should either provide you with the terms and
+conditions governing the Included Features or
+inform you where you can locate them. Feature Update Licenses may be
+found in the "license" property of files named "feature.properties"
+found within a Feature.
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the
+terms and conditions (or references to such terms and conditions) that
+govern your use of the associated Content in
+that directory.</p>
+
+<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER
+TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.
+ SOME OF THESE
+OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
+
+<ul>
+ <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+ <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+ <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+ <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+ <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
+ <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND
+CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License,
+or Feature Update License is provided, please
+contact the Eclipse Foundation to determine what terms and conditions
+govern that particular Content.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software,
+examples of which include, but are not limited to, p2 and the Eclipse
+ Update Manager ("Provisioning Technology") for the purpose of
+allowing users to install software, documentation, information and/or
+ other materials (collectively "Installable Software"). This
+capability is provided with the intent of allowing such users to
+ install, extend and update Eclipse-based products. Information about
+packaging Installable Software is available at <a href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+ ("Specification").</p>
+
+<p>You may use Provisioning Technology to allow other parties to install
+ Installable Software. You shall be responsible for enabling the
+ applicable license agreements relating to the Installable Software to
+ be presented to, and accepted by, the users of the Provisioning
+Technology
+ in accordance with the Specification. By using Provisioning
+Technology in such a manner and making it available in accordance with
+the
+ Specification, you further acknowledge your agreement to, and the
+acquisition of all necessary rights to permit the following:</p>
+
+<ol>
+ <li>A series of actions may occur ("Provisioning Process") in
+which a user may execute the Provisioning Technology
+ on a machine ("Target Machine") with the intent of installing,
+extending or updating the functionality of an Eclipse-based
+ product.</li>
+ <li>During the Provisioning Process, the Provisioning Technology
+may cause third party Installable Software or a portion thereof to be
+ accessed and copied to the Target Machine.</li>
+ <li>Pursuant to the Specification, you will provide to the user
+the terms and conditions that govern the use of the Installable
+ Software ("Installable Software Agreement") and such Installable
+Software Agreement shall be accessed from the Target
+ Machine in accordance with the Specification. Such Installable
+Software Agreement must inform the user of the terms and conditions that
+ govern
+ the Installable Software and must solicit acceptance by the end
+user in the manner prescribed in such Installable Software Agreement.
+Upon such
+ indication of agreement by the user, the provisioning Technology
+will complete installation of the Installable Software.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>Content may contain encryption software. The country in which you are
+ currently may have restrictions on the import, possession, and use,
+and/or re-export to
+ another country, of encryption software. BEFORE using any encryption
+software, please check the country's laws, regulations and policies
+concerning the import,
+ possession, or use, and re-export of encryption software, to see if
+this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+
+
+</body></html> \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/pom.xml b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/pom.xml
new file mode 100644
index 0000000..83e1c48
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/pom.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--#======================================================================= -->
+<!--# Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany) -->
+<!--# 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: -->
+<!--# Christophe Loetz (Loetz GmbH&Co.KG) - initial API and implementation -->
+<!--#======================================================================= -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.eclipse.osbp.mobile.vaadin</groupId>
+ <artifactId>org.eclipse.osbp.mobile.vaadin.aggregator</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
+ </parent>
+ <artifactId>org.eclipse.osbp.mobile.vaadin.ecview.editparts</artifactId>
+ <packaging>eclipse-plugin</packaging>
+ <description>Contains the API for ui controller</description>
+</project>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IHorizontalButtonGroupEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IHorizontalButtonGroupEditpart.java
new file mode 100644
index 0000000..a9e659f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IHorizontalButtonGroupEditpart.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+
+import org.eclipse.osbp.ecview.core.common.editpart.ILayoutEditpart;
+
+/**
+ * The abstraction for a mobile horizontal layout.
+ */
+public interface IHorizontalButtonGroupEditpart extends ILayoutEditpart {
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IMobileSearchPanelEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IMobileSearchPanelEditpart.java
new file mode 100644
index 0000000..e5802d2
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IMobileSearchPanelEditpart.java
@@ -0,0 +1,21 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+
+import org.eclipse.osbp.ecview.core.common.editpart.ILayoutEditpart;
+
+/**
+ * The abstraction for an vertical layout. The grid layout extends layout and it is an elementContainer that can contain
+ * other embeddables.
+ */
+public interface IMobileSearchPanelEditpart extends ILayoutEditpart {
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IMobileTabEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IMobileTabEditpart.java
new file mode 100644
index 0000000..b9df880
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IMobileTabEditpart.java
@@ -0,0 +1,116 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+
+import org.eclipse.osbp.ecview.core.common.editpart.IElementEditpart;
+import org.eclipse.osbp.ecview.core.common.editpart.IViewEditpart;
+import org.eclipse.osbp.ecview.core.common.presentation.IWidgetPresentation;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.presentation.IMobileTabPresentation;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The abstraction for a tab.
+ */
+public interface IMobileTabEditpart extends IElementEditpart {
+
+ /**
+ * Name for "parent" property.
+ */
+ String PROP_PARENT = "parent";
+ /**
+ * Name for "cssClass" property.
+ */
+ String PROP_CSSCLASS = "cssClass";
+ /**
+ * Name for "cssID" property.
+ */
+ String PROP_CSSID = "cssID";
+
+ /**
+ * Returns the parent of this tab.<br>
+ * Will be <code>null</code> for the layout that is attached to the view as
+ * content.
+ *
+ * @return editpart The parent editpart
+ */
+ IMobileTabSheetEditpart getParent();
+
+ /**
+ * Returns the view edit part of this tab edit part.<br>
+ * May be <code>null</code> as far as this element and no of its parents are
+ * attached to a view.
+ *
+ * @return editpart The view editpart
+ */
+ IViewEditpart getView();
+
+ /**
+ * Returns the widget presentation for the tab.
+ *
+ * @param <A>
+ * An instance of {@link IWidgetPresentation}
+ * @return presentation The presentation of that tab used to render the UI.
+ */
+ <A extends IMobileTabPresentation<?>> A getPresentation();
+
+ /**
+ * Requests rendering of the current editpart. This method will forward the
+ * request to the parent if available and the parent will handle the steps
+ * required to render the editpart properly.
+ */
+ void requestRender();
+
+ /**
+ * This method is called by the parent presentation to render the contents
+ * of the editpart.
+ *
+ * @param parentWidget
+ * - The parent widget the new widget will be placed on.
+ * @return newWidget - without adding it to the parentWidget.
+ */
+ Object render(Object parentWidget);
+
+ /**
+ * Requests unrendering of the current editpart. This method will forward
+ * the request to the parent if available and the parent will handle the
+ * steps required to unrender the editpart properly.
+ */
+ void requestUnrender();
+
+ /**
+ * This method is called by the parent editpart and tells the current
+ * editpart, that it should unrender its presentation now.
+ */
+ void unrender();
+
+ /**
+ * Returns true, if the editparts presentation is rendered.
+ *
+ * @return true, if is rendered
+ */
+ boolean isRendered();
+
+ /**
+ * Returns the rendered widget by the editparts presentation. Will return
+ * <code>null</code> if the presentation was not rendered yet.
+ *
+ * @return the widget
+ */
+ Object getWidget();
+
+ /**
+ * Requests disposal of the current editpart. This method will forward the
+ * request to the parent if available and the parent will handle the steps
+ * required to dispose the editpart properly.
+ */
+ void requestDispose();
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IMobileTabSheetEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IMobileTabSheetEditpart.java
new file mode 100644
index 0000000..6b66551
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IMobileTabSheetEditpart.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+
+import java.util.List;
+
+import org.eclipse.osbp.ecview.core.common.editpart.IEmbeddableEditpart;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The abstraction for a tab sheet.
+ */
+public interface IMobileTabSheetEditpart extends IEmbeddableEditpart {
+
+ /**
+ * Returns an unmodifiable list with all tabs contained in the tabsheet.
+ *
+ * @return elements The children editparts contained in this tabsheet
+ */
+ List<IMobileTabEditpart> getTabs();
+
+ /**
+ * Adds a tab to the tabsheet. Adding the same tab twice has no effect.
+ *
+ * @param tab
+ * The editpart to be added.
+ */
+ void addTab(IMobileTabEditpart tab);
+
+ /**
+ * Removes a tab from the tabsheet.
+ *
+ * @param tab
+ * the tab
+ */
+ void removeTab(IMobileTabEditpart tab);
+
+ /**
+ * Renders the given tab.
+ *
+ * @param mobileTabEditpart
+ * the mobile tab editpart
+ */
+ void renderTab(IMobileTabEditpart mobileTabEditpart);
+
+ /**
+ * Disposes the given tab.
+ *
+ * @param mobileTabEditpart
+ * the mobile tab editpart
+ */
+ void disposeTab(IMobileTabEditpart mobileTabEditpart);
+
+ /**
+ * Unrenders the given tab.
+ *
+ * @param mobileTabEditpart
+ * the mobile tab editpart
+ */
+ void unrenderTab(IMobileTabEditpart mobileTabEditpart);
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationBarButtonEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationBarButtonEditpart.java
new file mode 100644
index 0000000..b8437c9
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationBarButtonEditpart.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+
+import org.eclipse.osbp.ecview.core.common.editpart.IActionEditpart;
+
+/**
+ * The abstraction for a mobile navigation button.
+ */
+public interface INavigationBarButtonEditpart extends IActionEditpart {
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationButtonEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationButtonEditpart.java
new file mode 100644
index 0000000..c3853f1
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationButtonEditpart.java
@@ -0,0 +1,28 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+
+import org.eclipse.osbp.ecview.core.common.editpart.IActionEditpart;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The abstraction for a mobile navigation button.
+ */
+public interface INavigationButtonEditpart extends IActionEditpart {
+
+ /**
+ * Returns the page the button should navigate to.
+ *
+ * @return the page
+ */
+ INavigationPageEditpart getPage();
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationCommandEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationCommandEditpart.java
new file mode 100644
index 0000000..dccf34e
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationCommandEditpart.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+
+import org.eclipse.osbp.ecview.core.common.editpart.ICommandEditpart;
+
+/**
+ * The abstraction for a mobile navigation button.
+ */
+public interface INavigationCommandEditpart extends ICommandEditpart {
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationHandler.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationHandler.java
new file mode 100644
index 0000000..55821a7
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationHandler.java
@@ -0,0 +1,42 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+
+
+
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+
+import org.eclipse.osbp.ecview.core.common.editpart.binding.IBindableEndpointEditpart;
+
+public interface INavigationHandler {
+
+ /**
+ * Calls to this method will navigate from the current navigation page to
+ * the target page using a navigation manager.
+ *
+ * @param targetPage
+ * @param bindable
+ * this object contains information about the input data of the
+ * target navigation page.
+ */
+ void navigateTo(INavigationPageEditpart targetPage,
+ IBindableEndpointEditpart bindable);
+
+ /**
+ * Tells the navigation page to navigate back.
+ */
+ void navigateBack();
+
+ /**
+ * Notifies listeners about the back navigation event.
+ */
+ void notifyBackNavigation();
+
+} \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationPageEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationPageEditpart.java
new file mode 100644
index 0000000..2ca6904
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationPageEditpart.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+
+import java.util.List;
+
+import org.eclipse.osbp.ecview.core.common.editpart.ILayoutEditpart;
+import org.eclipse.osbp.ecview.core.common.editpart.binding.IBindableEndpointEditpart;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The abstraction for a mobile navigation page.
+ */
+public interface INavigationPageEditpart extends ILayoutEditpart,
+ INavigationHandler {
+
+ /**
+ * Sets the input binding endpoint. Fields of the navigation page needs to
+ * be bound against the object at the end of the binding endpoint. For
+ * instance, if a table row triggers binding, it will pass a binding
+ * endpoint targeting the selected table row. Needs to be called before
+ * rendering the child.
+ *
+ * <p>
+ * This method is called on the child navigation page, that was triggered by
+ * selecting a table row,...
+ *
+ * @param bindingEndpoint
+ * the new input data binding endpoint
+ */
+ void setInputDataBindingEndpoint(IBindableEndpointEditpart bindingEndpoint);
+
+ /**
+ * Returns a list of all attached navigation bar buttons.
+ *
+ * @return navigationBarButtons
+ */
+ List<INavigationBarButtonEditpart> getBarButtons();
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationRootEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationRootEditpart.java
new file mode 100644
index 0000000..0d018e0
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/INavigationRootEditpart.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+
+import org.eclipse.osbp.ecview.core.common.editpart.ILayoutEditpart;
+
+/**
+ * The abstraction for a mobile navigation page.
+ */
+public interface INavigationRootEditpart extends ILayoutEditpart {
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/ISwitchEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/ISwitchEditpart.java
new file mode 100644
index 0000000..5ff006f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/ISwitchEditpart.java
@@ -0,0 +1,17 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+
+import org.eclipse.osbp.ecview.core.common.editpart.IFieldEditpart;
+
+public interface ISwitchEditpart extends IFieldEditpart {
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IVerticalComponentGroupEditpart.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IVerticalComponentGroupEditpart.java
new file mode 100644
index 0000000..f2d871d
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/IVerticalComponentGroupEditpart.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts;
+
+import org.eclipse.osbp.ecview.core.common.editpart.ILayoutEditpart;
+
+/**
+ * The abstraction for a mobile vertical layout.
+ */
+public interface IVerticalComponentGroupEditpart extends ILayoutEditpart {
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/presentation/IMobileTabPresentation.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/presentation/IMobileTabPresentation.java
new file mode 100644
index 0000000..2220256
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/presentation/IMobileTabPresentation.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.presentation;
+
+import org.eclipse.osbp.ecview.core.common.presentation.IWidgetPresentation;
+
+/**
+ * TabSheetPresentations are an abstraction above a tab an are responsible to
+ * create the UI-Kit specific elements and to handle them. One important thing
+ * to notice is, that the life cycle of presentations is handled by their edit
+ * parts. And so an presentations must never dispose its tab presentations!
+ *
+ * @param <C>
+ * the generic type
+ */
+public interface IMobileTabPresentation<C> extends IWidgetPresentation<C> {
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/presentation/IMobileTabSheetPresentation.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/presentation/IMobileTabSheetPresentation.java
new file mode 100644
index 0000000..6c2f65d
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/presentation/IMobileTabSheetPresentation.java
@@ -0,0 +1,96 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.presentation;
+
+import java.util.List;
+
+import org.eclipse.osbp.ecview.core.common.presentation.IWidgetPresentation;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.IMobileTabEditpart;
+
+// TODO: Auto-generated Javadoc
+/**
+ * TabSheetEditparts are an abstraction above a tabSheet an are responsible to
+ * create the UI-Kit specific elements and to handle them. One important thing
+ * to notice is, that the life cycle of tabs is handled by their edit parts. And
+ * so an tabs must never dispose its tab tabs!
+ *
+ * @param <C>
+ * the generic type
+ */
+public interface IMobileTabSheetPresentation<C> extends IWidgetPresentation<C> {
+
+ /**
+ * Returns a list containing all tab tabs.
+ *
+ * @return tabren
+ */
+ List<IMobileTabEditpart> getTabs();
+
+ /**
+ * Returns true, if the given tab is contained.
+ *
+ * @param tab
+ * The tab
+ * @return true if the tab is contained. False otherwise.
+ */
+ boolean contains(IMobileTabEditpart tab);
+
+ /**
+ * Adds a tab to the this tabSheet. Note, that the tab can be of any kind
+ * and it not parameterized.
+ *
+ * @param tab
+ * The tab to be added
+ */
+ void add(IMobileTabEditpart tab);
+
+ /**
+ * Removes a tab from this tabSheet.
+ *
+ * @param tab
+ * The tab to be removed
+ */
+ void remove(IMobileTabEditpart tab);
+
+ /**
+ * Inserts the given tab at the index.
+ *
+ * @param tab
+ * The tab to be inserted
+ * @param index
+ * The index where the tab should be inserted
+ */
+ void insert(IMobileTabEditpart tab, int index);
+
+ /**
+ * Moves the tab from its current index to the given one.
+ *
+ * @param tab
+ * The tab
+ * @param index
+ * The index where the tab should be moved to
+ */
+ void move(IMobileTabEditpart tab, int index);
+
+ /**
+ * Will render the tab tabs.<br>
+ * <ul>
+ * <li><b>force == false:</b> Only elements will be rendered that are not
+ * rendered yet. Already rendered elements will not be touched.</li>
+ * <li><b>force == true:</b> First will unrender all tab tabs and afterward
+ * it will render them again.</li>
+ * </ul>
+ *
+ * @param force
+ * see method description
+ */
+ void renderTabs(boolean force);
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/presentation/INavigationPagePresentation.java b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/presentation/INavigationPagePresentation.java
new file mode 100644
index 0000000..b600b61
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.editparts/src/org/eclipse/osbp/mobile/vaadin/ecview/editparts/presentation/INavigationPagePresentation.java
@@ -0,0 +1,106 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+
+
+package org.eclipse.osbp.mobile.vaadin.ecview.editparts.presentation;
+
+import org.eclipse.osbp.ecview.core.common.editpart.binding.IBindableEndpointEditpart;
+import org.eclipse.osbp.ecview.core.common.presentation.ILayoutPresentation;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationBarButtonEditpart;
+import org.eclipse.osbp.mobile.vaadin.ecview.editparts.INavigationPageEditpart;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The Interface INavigationPagePresentation.
+ *
+ * @param <C>
+ * the generic type
+ */
+public interface INavigationPagePresentation<C> extends ILayoutPresentation<C> {
+
+ /**
+ * Calls to this method will navigate from the current navigation page to
+ * the target page using a navigation manager.
+ *
+ * <p>
+ * This method is called on the navigation page, that should trigger the
+ * navigation to the child page.
+ *
+ * @param targetPage
+ * the target page
+ * @param bindingEndpoint
+ * - Sets the input binding endpoint. Fields of the navigation
+ * page needs to be bound against the object at the end of the
+ * binding endpoint. For instance, if a table row triggers
+ * binding, it will pass a binding endpoint targeting the
+ * selected table row.
+ */
+ void navigateTo(INavigationPageEditpart targetPage,
+ IBindableEndpointEditpart bindingEndpoint);
+
+ /**
+ * Tells the navigation page to navigate back.
+ */
+ void navigateBack();
+
+ /**
+ * Sets the input binding endpoint. Fields of the navigation page needs to
+ * be bound against the object at the end of the binding endpoint. For
+ * instance, if a table row triggers binding, it will pass a binding
+ * endpoint targeting the selected table row. Needs to be called before
+ * rendering the child.
+ *
+ * <p>
+ * This method is called on the child navigation page, that was triggered by
+ * selecting a table row,...
+ *
+ * @param bindingEndpoint
+ * the new input data binding endpoint
+ */
+ void setInputDataBindingEndpoint(IBindableEndpointEditpart bindingEndpoint);
+
+ /**
+ * Adds the bar action.
+ *
+ * @param editPart
+ * the edit part
+ */
+ void addBarAction(INavigationBarButtonEditpart editPart);
+
+ /**
+ * Insert bar action.
+ *
+ * @param editPart
+ * the edit part
+ * @param index
+ * the index
+ */
+ void insertBarAction(INavigationBarButtonEditpart editPart, int index);
+
+ /**
+ * Move bar action.
+ *
+ * @param editPart
+ * the edit part
+ * @param position
+ * the position
+ */
+ void moveBarAction(INavigationBarButtonEditpart editPart, int position);
+
+ /**
+ * Removes the bar action.
+ *
+ * @param editPart
+ * the edit part
+ */
+ void removeBarAction(INavigationBarButtonEditpart editPart);
+
+}
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/.project b/org.eclipse.osbp.mobile.vaadin.ecview.model/.project
new file mode 100644
index 0000000..933f450
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/.project
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.osbp.mobile.vaadin.ecview.model</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <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>
+ <buildCommand>
+ <name>org.eclipse.babel.editor.rbeBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.sonarlint.eclipse.core.sonarlintBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.babel.editor.rbeNature</nature>
+ </natures>
+</projectDescription>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/LICENSE.txt b/org.eclipse.osbp.mobile.vaadin.ecview.model/LICENSE.txt
new file mode 100644
index 0000000..ff42ad4
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/LICENSE.txt
@@ -0,0 +1,161 @@
+Eclipse Public License -v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION
+OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor.
+A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone
+acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate
+modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not
+derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of
+its Contribution alone or when combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute
+and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code
+form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the
+Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the
+combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such
+addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not
+apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no
+assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity
+based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property
+rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the
+Program, it is Recipient's responsibility to acquire that license before distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to
+grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including
+warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and
+fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any
+other party; and
+
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it
+in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and
+the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes
+the Program in a commercial product offering should do so in a manner which does not create potential liability for
+other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions
+brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such
+Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual
+property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the
+Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may
+ participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is
+then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties
+related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone.
+Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to
+those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result,
+the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR
+CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE,
+NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for
+determining the appropriateness of using and distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance
+with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS),
+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such
+provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such
+Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such
+litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such
+noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution
+of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses
+ granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement
+is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish
+new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the
+right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the
+Agreement will be given a distinguishing version number. The Program (including Contributions) may always be
+distributed subject to the version of the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the
+new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States
+of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause
+of action arose. Each party waives its rights to a jury trial in any resulting litigation. \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/META-INF/MANIFEST.MF b/org.eclipse.osbp.mobile.vaadin.ecview.model/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..9df28f5
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/META-INF/MANIFEST.MF
@@ -0,0 +1,37 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: org.eclipse.osbp.mobile.vaadin.ecview.model
+Bundle-SymbolicName: org.eclipse.osbp.mobile.vaadin.ecview.model;singleton:=true
+Bundle-Version: 0.9.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: Eclipse OSBP
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Export-Package: org.eclipse.osbp.mobile.vaadin.ecview.model;
+ uses:="org.eclipse.osbp.ecview.core.common.model.binding,
+ org.eclipse.emf.ecore,
+ org.eclipse.emf.common.util,
+ org.eclipse.osbp.ecview.core.common.model.datatypes,
+ org.eclipse.osbp.ecview.core.common.model.core";version="0.9.0",
+ org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+ uses:="org.eclipse.osbp.ecview.core.common.model.binding,
+ org.eclipse.emf.ecore,
+ org.eclipse.emf.common.util,
+ org.eclipse.osbp.mobile.vaadin.ecview.model,
+ org.eclipse.osbp.ecview.core.common.model.datatypes,
+ org.eclipse.osbp.ecview.core.common.model.core,
+ org.eclipse.emf.common.notify,
+ org.eclipse.emf.ecore.impl,
+ org.eclipse.osbp.ecview.core.common.model.core.impl";version="0.9.0",
+ org.eclipse.osbp.mobile.vaadin.ecview.model.util;
+ uses:="org.eclipse.emf.ecore.util,
+ org.eclipse.emf.ecore,
+ org.eclipse.emf.common.notify.impl,
+ org.eclipse.osbp.mobile.vaadin.ecview.model,
+ org.eclipse.osbp.ecview.core.common.model.core,
+ org.eclipse.emf.common.notify";version="0.9.0"
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.osbp.ecview.core.common.model;bundle-version="[0.9.0,0.10.0)";visibility:=reexport,
+ org.eclipse.osbp.ecview.core.extension.model;bundle-version="[0.9.0,0.10.0)"
+Bundle-ActivationPolicy: lazy
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/about.html b/org.eclipse.osbp.mobile.vaadin.ecview.model/about.html
new file mode 100644
index 0000000..64c0598
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/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>June 1, 2016</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/org.eclipse.osbp.mobile.vaadin.ecview.model/about.ini b/org.eclipse.osbp.mobile.vaadin.ecview.model/about.ini
new file mode 100644
index 0000000..7df671f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/about.ini
@@ -0,0 +1,17 @@
+# about.ini
+# contains information about a feature
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# "%key" are externalized strings defined in about.properties
+# This file does not need to be translated.
+
+# Property "aboutText" contains blurb for "About" dialog (translated)
+aboutText=%featureText
+
+# Property "featureImage" contains path to feature image (32x32)
+featureImage=
+
+# Property "appName" contains name of the application (translated)
+appName=%featureName
+
+# Property "welcomePage" contains path to welcome page (special XML-based format)
+welcomePage=
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/about.mappings b/org.eclipse.osbp.mobile.vaadin.ecview.model/about.mappings
new file mode 100644
index 0000000..4511a0a
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/about.mappings
@@ -0,0 +1,6 @@
+# about.mappings
+# contains fill-ins for about.properties
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# This file does not need to be translated.
+
+0=qualifier
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/about.properties b/org.eclipse.osbp.mobile.vaadin.ecview.model/about.properties
new file mode 100644
index 0000000..136f94b
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/about.properties
@@ -0,0 +1,26 @@
+#
+# Copyright (c) 2012, 2016 - Loetz GmbH&Co.KG (Heidelberg)
+# 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:
+# Christophe Loetz (Loetz GmbH&Co.KG) - initial API and implementation
+#
+
+# NLS_MESSAGEFORMAT_VAR
+
+featureName=org.eclipse.osbp.mobile.vaadin.ecview.model
+
+################ blurb property ####################################
+featureText=\
+Copyright (c) 2012-2016 - Loetz GmbH&Co.KG \n\
+All rights reserved. This program and the accompanying materials\n\
+are made available under the terms of the Eclipse Public License v1.0\n\
+which accompanies this distribution, and is available at\n\
+http://www.eclipse.org/legal/epl-v10.html\n\
+\n\
+Contributors:\n\
+ Christophe Loetz (Loetz GmbH&Co.KG) - initial implementation\n
+################ end of blurb property ####################################
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/build.properties b/org.eclipse.osbp.mobile.vaadin.ecview.model/build.properties
new file mode 100644
index 0000000..d4f43cd
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/build.properties
@@ -0,0 +1,13 @@
+#
+output.. = target/classes/
+bin.includes = about.properties, about.mappings, about.ini, about.html, .,\
+ model/,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties,\
+ LICENSE.txt,\
+ license.html
+jars.compile.order = .
+source.. = src/
+src.includes = about.properties, about.mappings, about.ini, about.html, LICENSE.txt,\
+ license.html
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/epl-v10.html b/org.eclipse.osbp.mobile.vaadin.ecview.model/epl-v10.html
new file mode 100644
index 0000000..b398acc
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/epl-v10.html
@@ -0,0 +1,259 @@
+<!--?xml version="1.0" encoding="ISO-8859-1" ?-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Eclipse Public License - Version 1.0</title>
+<style type="text/css">
+ body {
+ size: 8.5in 11.0in;
+ margin: 0.25in 0.5in 0.25in 0.5in;
+ tab-interval: 0.5in;
+ }
+ p {
+ margin-left: auto;
+ margin-top: 0.5em;
+ margin-bottom: 0.5em;
+ }
+ p.list {
+ margin-left: 0.5in;
+ margin-top: 0.05em;
+ margin-bottom: 0.05em;
+ }
+ </style>
+
+</head>
+
+<body lang="EN-US">
+
+<h2>Eclipse Public License - v 1.0</h2>
+
+<p>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
+PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR
+DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS
+AGREEMENT.</p>
+
+<p><b>1. DEFINITIONS</b></p>
+
+<p>"Contribution" means:</p>
+
+<p class="list">a) in the case of the initial Contributor, the initial
+code and documentation distributed under this Agreement, and</p>
+<p class="list">b) in the case of each subsequent Contributor:</p>
+<p class="list">i) changes to the Program, and</p>
+<p class="list">ii) additions to the Program;</p>
+<p class="list">where such changes and/or additions to the Program
+originate from and are distributed by that particular Contributor. A
+Contribution 'originates' from a Contributor if it was added to the
+Program by such Contributor itself or anyone acting on such
+Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in
+conjunction with the Program under their own license agreement, and (ii)
+are not derivative works of the Program.</p>
+
+<p>"Contributor" means any person or entity that distributes
+the Program.</p>
+
+<p>"Licensed Patents" mean patent claims licensable by a
+Contributor which are necessarily infringed by the use or sale of its
+Contribution alone or when combined with the Program.</p>
+
+<p>"Program" means the Contributions distributed in accordance
+with this Agreement.</p>
+
+<p>"Recipient" means anyone who receives the Program under
+this Agreement, including all Contributors.</p>
+
+<p><b>2. GRANT OF RIGHTS</b></p>
+
+<p class="list">a) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works
+of, publicly display, publicly perform, distribute and sublicense the
+Contribution of such Contributor, if any, and such derivative works, in
+source code and object code form.</p>
+
+<p class="list">b) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell,
+offer to sell, import and otherwise transfer the Contribution of such
+Contributor, if any, in source code and object code form. This patent
+license shall apply to the combination of the Contribution and the
+Program if, at the time the Contribution is added by the Contributor,
+such addition of the Contribution causes such combination to be covered
+by the Licensed Patents. The patent license shall not apply to any other
+combinations which include the Contribution. No hardware per se is
+licensed hereunder.</p>
+
+<p class="list">c) Recipient understands that although each Contributor
+grants the licenses to its Contributions set forth herein, no assurances
+are provided by any Contributor that the Program does not infringe the
+patent or other intellectual property rights of any other entity. Each
+Contributor disclaims any liability to Recipient for claims brought by
+any other entity based on infringement of intellectual property rights
+or otherwise. As a condition to exercising the rights and licenses
+granted hereunder, each Recipient hereby assumes sole responsibility to
+secure any other intellectual property rights needed, if any. For
+example, if a third party patent license is required to allow Recipient
+to distribute the Program, it is Recipient's responsibility to acquire
+that license before distributing the Program.</p>
+
+<p class="list">d) Each Contributor represents that to its knowledge it
+has sufficient copyright rights in its Contribution, if any, to grant
+the copyright license set forth in this Agreement.</p>
+
+<p><b>3. REQUIREMENTS</b></p>
+
+<p>A Contributor may choose to distribute the Program in object code
+form under its own license agreement, provided that:</p>
+
+<p class="list">a) it complies with the terms and conditions of this
+Agreement; and</p>
+
+<p class="list">b) its license agreement:</p>
+
+<p class="list">i) effectively disclaims on behalf of all Contributors
+all warranties and conditions, express and implied, including warranties
+or conditions of title and non-infringement, and implied warranties or
+conditions of merchantability and fitness for a particular purpose;</p>
+
+<p class="list">ii) effectively excludes on behalf of all Contributors
+all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;</p>
+
+<p class="list">iii) states that any provisions which differ from this
+Agreement are offered by that Contributor alone and not by any other
+party; and</p>
+
+<p class="list">iv) states that source code for the Program is available
+from such Contributor, and informs licensees how to obtain it in a
+reasonable manner on or through a medium customarily used for software
+exchange.</p>
+
+<p>When the Program is made available in source code form:</p>
+
+<p class="list">a) it must be made available under this Agreement; and</p>
+
+<p class="list">b) a copy of this Agreement must be included with each
+copy of the Program.</p>
+
+<p>Contributors may not remove or alter any copyright notices contained
+within the Program.</p>
+
+<p>Each Contributor must identify itself as the originator of its
+Contribution, if any, in a manner that reasonably allows subsequent
+Recipients to identify the originator of the Contribution.</p>
+
+<p><b>4. COMMERCIAL DISTRIBUTION</b></p>
+
+<p>Commercial distributors of software may accept certain
+responsibilities with respect to end users, business partners and the
+like. While this license is intended to facilitate the commercial use of
+the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create
+potential liability for other Contributors. Therefore, if a Contributor
+includes the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and
+indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses")
+arising from claims, lawsuits and other legal actions brought by a third
+party against the Indemnified Contributor to the extent caused by the
+acts or omissions of such Commercial Contributor in connection with its
+distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In
+order to qualify, an Indemnified Contributor must: a) promptly notify
+the Commercial Contributor in writing of such claim, and b) allow the
+Commercial Contributor to control, and cooperate with the Commercial
+Contributor in, the defense and any related settlement negotiations. The
+Indemnified Contributor may participate in any such claim at its own
+expense.</p>
+
+<p>For example, a Contributor might include the Program in a commercial
+product offering, Product X. That Contributor is then a Commercial
+Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance
+claims and warranties are such Commercial Contributor's responsibility
+alone. Under this section, the Commercial Contributor would have to
+defend claims against the other Contributors related to those
+performance claims and warranties, and if a court requires any other
+Contributor to pay any damages as a result, the Commercial Contributor
+must pay those damages.</p>
+
+<p><b>5. NO WARRANTY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
+PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION,
+ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
+OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and
+distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to
+the risks and costs of program errors, compliance with applicable laws,
+damage to or loss of data, programs or equipment, and unavailability or
+interruption of operations.</p>
+
+<p><b>6. DISCLAIMER OF LIABILITY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT
+NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
+WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
+DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p>
+
+<p><b>7. GENERAL</b></p>
+
+<p>If any provision of this Agreement is invalid or unenforceable under
+applicable law, it shall not affect the validity or enforceability of
+the remainder of the terms of this Agreement, and without further action
+by the parties hereto, such provision shall be reformed to the minimum
+extent necessary to make such provision valid and enforceable.</p>
+
+<p>If Recipient institutes patent litigation against any entity
+(including a cross-claim or counterclaim in a lawsuit) alleging that the
+Program itself (excluding combinations of the Program with other
+software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the
+date such litigation is filed.</p>
+
+<p>All Recipient's rights under this Agreement shall terminate if it
+fails to comply with any of the material terms or conditions of this
+Agreement and does not cure such failure in a reasonable period of time
+after becoming aware of such noncompliance. If all Recipient's rights
+under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive.</p>
+
+<p>Everyone is permitted to copy and distribute copies of this
+Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The
+Agreement Steward reserves the right to publish new versions (including
+revisions) of this Agreement from time to time. No one other than the
+Agreement Steward has the right to modify this Agreement. The Eclipse
+Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a
+suitable separate entity. Each new version of the Agreement will be
+given a distinguishing version number. The Program (including
+Contributions) may always be distributed subject to the version of the
+Agreement under which it was received. In addition, after a new version
+of the Agreement is published, Contributor may elect to distribute the
+Program (including its Contributions) under the new version. Except as
+expressly stated in Sections 2(a) and 2(b) above, Recipient receives no
+rights or licenses to the intellectual property of any Contributor under
+this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this
+Agreement are reserved.</p>
+
+<p>This Agreement is governed by the laws of the State of New York and
+the intellectual property laws of the United States of America. No party
+to this Agreement will bring a legal action under this Agreement more
+than one year after the cause of action arose. Each party waives its
+rights to a jury trial in any resulting litigation.</p>
+
+
+
+</body></html> \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/license.html b/org.eclipse.osbp.mobile.vaadin.ecview.model/license.html
new file mode 100644
index 0000000..6e579a5
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/license.html
@@ -0,0 +1,164 @@
+<!--?xml version="1.0" encoding="ISO-8859-1" ?-->
+<!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>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>February 1, 2011</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+ (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
+ CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE
+ OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
+ NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
+ CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>Unless otherwise indicated, all Content made available by the Eclipse
+ Foundation is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0
+ ("EPL"). A copy of the EPL is provided with this Content and is also
+ 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, "Program" will mean the Content.</p>
+
+<p>Content includes, but is not limited to, source code, object code,
+documentation and other files maintained in the Eclipse Foundation
+source code
+ repository ("Repository") in software modules ("Modules") and made
+available as downloadable archives ("Downloads").</p>
+
+<ul>
+ <li>Content may be structured and packaged into modules to
+facilitate delivering, extending, and upgrading the Content. Typical
+modules may include plug-ins ("Plug-ins"), plug-in fragments
+("Fragments"), and features ("Features").</li>
+ <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&#8482; ARchive) in a directory named "plugins".</li>
+ <li>A Feature is a bundle of one or more Plug-ins and/or
+Fragments and associated material. Each Feature may be packaged as a
+sub-directory in a directory named "features". Within a Feature, files
+named "feature.xml" may contain a list of the names and version numbers
+of the Plug-ins
+ and/or Fragments associated with that Feature.</li>
+ <li>Features may also include other Features ("Included
+Features"). Within a Feature, files named "feature.xml" may contain a
+list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be
+contained in files named "about.html" ("Abouts"). The terms and
+conditions governing Features and
+Included Features should be contained in files named "license.html"
+("Feature Licenses"). Abouts and Feature Licenses may be located in any
+ directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+ <li>The top-level (root) directory</li>
+ <li>Plug-in and Fragment directories</li>
+ <li>Inside Plug-ins and Fragments packaged as JARs</li>
+ <li>Sub-directories of the directory named "src" of certain Plug-ins</li>
+ <li>Feature directories</li>
+</ul>
+
+<p>Note: if a Feature made available by the Eclipse Foundation is
+installed using the Provisioning Technology (as defined below), you must
+ agree to a license ("Feature Update License") during the
+installation process. If the Feature contains Included Features, the
+Feature Update License should either provide you with the terms and
+conditions governing the Included Features or
+inform you where you can locate them. Feature Update Licenses may be
+found in the "license" property of files named "feature.properties"
+found within a Feature.
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the
+terms and conditions (or references to such terms and conditions) that
+govern your use of the associated Content in
+that directory.</p>
+
+<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER
+TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.
+ SOME OF THESE
+OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
+
+<ul>
+ <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+ <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+ <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+ <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+ <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
+ <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND
+CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License,
+or Feature Update License is provided, please
+contact the Eclipse Foundation to determine what terms and conditions
+govern that particular Content.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software,
+examples of which include, but are not limited to, p2 and the Eclipse
+ Update Manager ("Provisioning Technology") for the purpose of
+allowing users to install software, documentation, information and/or
+ other materials (collectively "Installable Software"). This
+capability is provided with the intent of allowing such users to
+ install, extend and update Eclipse-based products. Information about
+packaging Installable Software is available at <a href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+ ("Specification").</p>
+
+<p>You may use Provisioning Technology to allow other parties to install
+ Installable Software. You shall be responsible for enabling the
+ applicable license agreements relating to the Installable Software to
+ be presented to, and accepted by, the users of the Provisioning
+Technology
+ in accordance with the Specification. By using Provisioning
+Technology in such a manner and making it available in accordance with
+the
+ Specification, you further acknowledge your agreement to, and the
+acquisition of all necessary rights to permit the following:</p>
+
+<ol>
+ <li>A series of actions may occur ("Provisioning Process") in
+which a user may execute the Provisioning Technology
+ on a machine ("Target Machine") with the intent of installing,
+extending or updating the functionality of an Eclipse-based
+ product.</li>
+ <li>During the Provisioning Process, the Provisioning Technology
+may cause third party Installable Software or a portion thereof to be
+ accessed and copied to the Target Machine.</li>
+ <li>Pursuant to the Specification, you will provide to the user
+the terms and conditions that govern the use of the Installable
+ Software ("Installable Software Agreement") and such Installable
+Software Agreement shall be accessed from the Target
+ Machine in accordance with the Specification. Such Installable
+Software Agreement must inform the user of the terms and conditions that
+ govern
+ the Installable Software and must solicit acceptance by the end
+user in the manner prescribed in such Installable Software Agreement.
+Upon such
+ indication of agreement by the user, the provisioning Technology
+will complete installation of the Installable Software.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>Content may contain encryption software. The country in which you are
+ currently may have restrictions on the import, possession, and use,
+and/or re-export to
+ another country, of encryption software. BEFORE using any encryption
+software, please check the country's laws, regulations and policies
+concerning the import,
+ possession, or use, and re-export of encryption software, to see if
+this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+
+
+</body></html> \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/model/vaadinmobile.ecore b/org.eclipse.osbp.mobile.vaadin.ecview.model/model/vaadinmobile.ecore
new file mode 100644
index 0000000..27952e8
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/model/vaadinmobile.ecore
@@ -0,0 +1,89 @@
+<?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="model" nsURI="http://osbp.org/ecview/v1/vaadin/mobile" nsPrefix="model">
+ <eClassifiers xsi:type="ecore:EClass" name="VMHorizontalButtonGroup" eSuperTypes="../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YLayout"/>
+ <eClassifiers xsi:type="ecore:EClass" name="VMSwitch" eSuperTypes="../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YField">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="datadescription" eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/datatypes.ecore#//YDatadescription"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="VMVerticalComponentGroup" eSuperTypes="../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YLayout"/>
+ <eClassifiers xsi:type="ecore:EClass" name="VMTabSheet" eSuperTypes="../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YEmbeddable">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="tabs" upperBound="-1" eType="#//VMTab"
+ containment="true" eOpposite="#//VMTab/parent"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="VMTab" eSuperTypes="../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YElement ../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YCssAble #//VMNavigationHandler">
+ <eOperations name="getView" eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YView"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="parent" lowerBound="1"
+ eType="#//VMTabSheet" eOpposite="#//VMTabSheet/tabs"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="embeddable" lowerBound="1"
+ eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YEmbeddable"
+ containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="datadescription" eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/datatypes.ecore#//YDatadescription"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="orphanDatadescriptions"
+ upperBound="-1" eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/datatypes.ecore#//YDatadescription"
+ containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="VMNavigationPage" eSuperTypes="../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YLayout #//VMNavigationHandler">
+ <eOperations name="createValueEndpoint" eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/binding.ecore#//YECViewModelValueBindingEndpoint"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="type">
+ <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaClass">
+ <eTypeArguments/>
+ </eGenericType>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="emfNsURI" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="typeQualifiedName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="barActions" upperBound="-1"
+ eType="#//VMNavigationBarButton" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="navigateBack" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="onNavigateBack" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="datadescription" eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/datatypes.ecore#//YDatadescription"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="cellStyles" upperBound="-1"
+ eType="#//VMNavigationPageCellStyle" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="VMNavigationPageCellStyle">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="target" lowerBound="1"
+ eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YEmbeddable"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="alignment" eType="ecore:EEnum ../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YAlignment"
+ defaultValueLiteral="UNDEFINED">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The alignment of the ui element relative to its grid cell."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="VMNavigationButton" eSuperTypes="../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YAction">
+ <eOperations name="getView" eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YView"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="page" eType="#//VMNavigationPage"
+ containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="datadescription" eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/datatypes.ecore#//YDatadescription"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastClickTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="VMNavigationCommand" eSuperTypes="../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YCommand">
+ <eOperations name="createNavigationValueEndpoint" eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/binding.ecore#//YECViewModelValueBindingEndpoint"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="navigationHandler" eType="#//VMNavigationHandler"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="targetPage" eType="#//VMNavigationPage"
+ containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="VMNavigationHandler" abstract="true"
+ interface="true" eSuperTypes="../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YElement"/>
+ <eClassifiers xsi:type="ecore:EClass" name="VMSearchPanel" eSuperTypes="../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YLayout ../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YSpacingable ../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YMarginable">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="type">
+ <eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaClass">
+ <eTypeArguments/>
+ </eGenericType>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="emfNsURI" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="typeQualifiedName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="applyFilter" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"
+ transient="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="filter" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"
+ transient="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="VMNavigationRoot" eSuperTypes="../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YLayout #//VMNavigationHandler"/>
+ <eClassifiers xsi:type="ecore:EClass" name="VMNavigationBarButton" eSuperTypes="../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YAction ../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YVisibleable ../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YEditable ../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YEnable">
+ <eOperations name="getView" eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/core.ecore#//YView"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="datadescription" eType="ecore:EClass ../../org.eclipse.osbp.ecview.core.common.model/model/datatypes.ecore#//YDatadescription"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastClickTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/model/vaadinmobile.genmodel b/org.eclipse.osbp.mobile.vaadin.ecview.model/model/vaadinmobile.genmodel
new file mode 100644
index 0000000..6634a62
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/model/vaadinmobile.genmodel
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel"
+ modelDirectory="/org.eclipse.osbp.mobile.vaadin.ecview.model/src" modelPluginID="org.eclipse.osbp.mobile.vaadin.ecview.model"
+ modelName="Vaadinmobile" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
+ importerID="org.eclipse.emf.importer.ecore" complianceLevel="6.0" copyrightFields="false"
+ usedGenPackages="../../org.eclipse.osbp.ecview.core.common.model/model/core.genmodel#//binding ../../org.eclipse.osbp.ecview.core.common.model/model/core.genmodel#//core ../../org.eclipse.osbp.ecview.core.common.model/model/core.genmodel#//validation ../../org.eclipse.osbp.ecview.core.common.model/model/core.genmodel#//datatypes ../../org.eclipse.osbp.ecview.core.common.model/model/core.genmodel#//visibility"
+ importOrganizing="true">
+ <foreignModel>vaadinmobile.ecore</foreignModel>
+ <genPackages prefix="VaadinMobile" basePackage="org.eclipse.osbp.mobile.vaadin.ecview"
+ disposableProviderFactory="true" ecorePackage="vaadinmobile.ecore#/">
+ <genClasses ecoreClass="vaadinmobile.ecore#//VMHoizontalComponentGroup"/>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/plugin.properties b/org.eclipse.osbp.mobile.vaadin.ecview.model/plugin.properties
new file mode 100644
index 0000000..4a6a554
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/plugin.properties
@@ -0,0 +1,2 @@
+pluginName = Extension model
+providerName =
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/plugin.xml b/org.eclipse.osbp.mobile.vaadin.ecview.model/plugin.xml
new file mode 100644
index 0000000..db9c42d
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/plugin.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated vaadinmobile -->
+ <package
+ uri="http://osbp.org/ecview/v1/vaadin/mobile"
+ class="org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage"
+ genModel="model/vaadinmobile.genmodel"/>
+ </extension>
+
+</plugin>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/pom.xml b/org.eclipse.osbp.mobile.vaadin.ecview.model/pom.xml
new file mode 100644
index 0000000..8f8e488
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/pom.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--#======================================================================= -->
+<!--# Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany) -->
+<!--# 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: -->
+<!--# Christophe Loetz (Loetz GmbH&Co.KG) - initial API and implementation -->
+<!--#======================================================================= -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.eclipse.osbp.mobile.vaadin</groupId>
+ <artifactId>org.eclipse.osbp.mobile.vaadin.aggregator</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
+ </parent>
+ <artifactId>org.eclipse.osbp.mobile.vaadin.ecview.model</artifactId>
+ <packaging>eclipse-plugin</packaging>
+ <description>Contains the extension ECView-Model</description>
+ <build>
+ <sourceDirectory>src</sourceDirectory>
+ </build>
+</project>
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMHorizontalButtonGroup.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMHorizontalButtonGroup.java
new file mode 100644
index 0000000..5cbc8b3
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMHorizontalButtonGroup.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.osbp.ecview.core.common.model.core.YLayout;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Horizontal Button Group</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMHorizontalButtonGroup()
+ * @model
+ * @generated
+ */
+public interface VMHorizontalButtonGroup extends YLayout {
+} // VMHorizontalButtonGroup
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationBarButton.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationBarButton.java
new file mode 100644
index 0000000..3bf7402
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationBarButton.java
@@ -0,0 +1,99 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.osbp.ecview.core.common.model.core.YAction;
+import org.eclipse.osbp.ecview.core.common.model.core.YEditable;
+import org.eclipse.osbp.ecview.core.common.model.core.YEnable;
+import org.eclipse.osbp.ecview.core.common.model.core.YView;
+
+import org.eclipse.osbp.ecview.core.common.model.core.YVisibleable;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.YDatadescription;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Navigation Bar Button</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton#getDatadescription <em>Datadescription</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton#getLastClickTime <em>Last Click Time</em>}</li>
+ * </ul>
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationBarButton()
+ * @model
+ * @generated
+ */
+public interface VMNavigationBarButton extends YAction, YVisibleable, YEditable, YEnable {
+ /**
+ * Returns the value of the '<em><b>Datadescription</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Datadescription</em>' reference isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Datadescription</em>' reference.
+ * @see #setDatadescription(YDatadescription)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationBarButton_Datadescription()
+ * @model
+ * @generated
+ */
+ YDatadescription getDatadescription();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton#getDatadescription <em>Datadescription</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Datadescription</em>' reference.
+ * @see #getDatadescription()
+ * @generated
+ */
+ void setDatadescription(YDatadescription value);
+
+ /**
+ * Returns the value of the '<em><b>Last Click Time</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Last Click Time</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Last Click Time</em>' attribute.
+ * @see #setLastClickTime(long)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationBarButton_LastClickTime()
+ * @model
+ * @generated
+ */
+ long getLastClickTime();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton#getLastClickTime <em>Last Click Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Last Click Time</em>' attribute.
+ * @see #getLastClickTime()
+ * @generated
+ */
+ void setLastClickTime(long value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * @generated
+ */
+ YView getView();
+
+} // VMNavigationBarButton
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationButton.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationButton.java
new file mode 100644
index 0000000..82936a5
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationButton.java
@@ -0,0 +1,122 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.osbp.ecview.core.common.model.core.YAction;
+import org.eclipse.osbp.ecview.core.common.model.core.YView;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.YDatadescription;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Navigation Button</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton#getPage <em>Page</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton#getDatadescription <em>Datadescription</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton#getLastClickTime <em>Last Click Time</em>}</li>
+ * </ul>
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationButton()
+ * @model
+ * @generated
+ */
+public interface VMNavigationButton extends YAction {
+ /**
+ * Returns the value of the '<em><b>Page</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Page</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Page</em>' containment reference.
+ * @see #setPage(VMNavigationPage)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationButton_Page()
+ * @model containment="true"
+ * @generated
+ */
+ VMNavigationPage getPage();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton#getPage <em>Page</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Page</em>' containment reference.
+ * @see #getPage()
+ * @generated
+ */
+ void setPage(VMNavigationPage value);
+
+ /**
+ * Returns the value of the '<em><b>Datadescription</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Datadescription</em>' reference isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Datadescription</em>' reference.
+ * @see #setDatadescription(YDatadescription)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationButton_Datadescription()
+ * @model
+ * @generated
+ */
+ YDatadescription getDatadescription();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton#getDatadescription <em>Datadescription</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Datadescription</em>' reference.
+ * @see #getDatadescription()
+ * @generated
+ */
+ void setDatadescription(YDatadescription value);
+
+ /**
+ * Returns the value of the '<em><b>Last Click Time</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Last Click Time</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Last Click Time</em>' attribute.
+ * @see #setLastClickTime(long)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationButton_LastClickTime()
+ * @model
+ * @generated
+ */
+ long getLastClickTime();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton#getLastClickTime <em>Last Click Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Last Click Time</em>' attribute.
+ * @see #getLastClickTime()
+ * @generated
+ */
+ void setLastClickTime(long value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * @generated
+ */
+ YView getView();
+
+} // VMNavigationButton
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationCommand.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationCommand.java
new file mode 100644
index 0000000..4dba7aa
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationCommand.java
@@ -0,0 +1,123 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.osbp.ecview.core.common.model.binding.YECViewModelValueBindingEndpoint;
+import org.eclipse.osbp.ecview.core.common.model.core.YCommand;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Navigation Command</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#getNavigationHandler <em>Navigation Handler</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#getTargetPage <em>Target Page</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationCommand()
+ * @model
+ * @generated
+ */
+public interface VMNavigationCommand extends YCommand {
+ /**
+ * Returns the value of the '<em><b>Target Page</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Target Page</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Target Page</em>' containment reference.
+ * @see #setTargetPage(VMNavigationPage)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationCommand_TargetPage()
+ * @model containment="true"
+ * @generated
+ */
+ VMNavigationPage getTargetPage();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#getTargetPage <em>Target Page</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Target Page</em>' containment reference.
+ * @see #getTargetPage()
+ * @generated
+ */
+ void setTargetPage(VMNavigationPage value);
+
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(Object)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationCommand_Value()
+ * @model
+ * @generated
+ */
+ Object getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(Object value);
+
+ /**
+ * Returns the value of the '<em><b>Navigation Handler</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Navigation Handler</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Navigation Handler</em>' reference.
+ * @see #setNavigationHandler(VMNavigationHandler)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationCommand_NavigationHandler()
+ * @model
+ * @generated
+ */
+ VMNavigationHandler getNavigationHandler();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#getNavigationHandler <em>Navigation Handler</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Navigation Handler</em>' reference.
+ * @see #getNavigationHandler()
+ * @generated
+ */
+ void setNavigationHandler(VMNavigationHandler value);
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the YEC view model value binding endpoint
+ * @model
+ * @generated
+ */
+ YECViewModelValueBindingEndpoint createNavigationValueEndpoint();
+
+} // VMNavigationCommand
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationHandler.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationHandler.java
new file mode 100644
index 0000000..db8c4f9
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationHandler.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.osbp.ecview.core.common.model.core.YElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Navigation Handler</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationHandler()
+ * @model interface="true" abstract="true"
+ * @generated
+ */
+public interface VMNavigationHandler extends YElement {
+} // VMNavigationHandler
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationPage.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationPage.java
new file mode 100644
index 0000000..3ae0d6e
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationPage.java
@@ -0,0 +1,288 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.osbp.ecview.core.common.model.binding.YECViewModelValueBindingEndpoint;
+import org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable;
+import org.eclipse.osbp.ecview.core.common.model.core.YLayout;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.YDatadescription;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Navigation Page</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getEmfNsURI <em>Emf Ns URI</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getTypeQualifiedName <em>Type Qualified Name</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getValue <em>Value</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getBarActions <em>Bar Actions</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getNavigateBack <em>Navigate Back</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getOnNavigateBack <em>On Navigate Back</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getDatadescription <em>Datadescription</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getCellStyles <em>Cell Styles</em>}</li>
+ * </ul>
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPage()
+ * @model
+ * @generated
+ */
+public interface VMNavigationPage extends YLayout, VMNavigationHandler {
+
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type</em>' attribute.
+ * @see #setType(Class)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPage_Type()
+ * @model
+ * @generated
+ */
+ Class<?> getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getType <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type</em>' attribute.
+ * @see #getType()
+ * @generated
+ */
+ void setType(Class<?> value);
+
+ /**
+ * Returns the value of the '<em><b>Emf Ns URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Emf Ns URI</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Emf Ns URI</em>' attribute.
+ * @see #setEmfNsURI(String)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPage_EmfNsURI()
+ * @model
+ * @generated
+ */
+ String getEmfNsURI();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getEmfNsURI <em>Emf Ns URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Emf Ns URI</em>' attribute.
+ * @see #getEmfNsURI()
+ * @generated
+ */
+ void setEmfNsURI(String value);
+
+ /**
+ * Returns the value of the '<em><b>Type Qualified Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type Qualified Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type Qualified Name</em>' attribute.
+ * @see #setTypeQualifiedName(String)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPage_TypeQualifiedName()
+ * @model
+ * @generated
+ */
+ String getTypeQualifiedName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getTypeQualifiedName <em>Type Qualified Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type Qualified Name</em>' attribute.
+ * @see #getTypeQualifiedName()
+ * @generated
+ */
+ void setTypeQualifiedName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(Object)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPage_Value()
+ * @model
+ * @generated
+ */
+ Object getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(Object value);
+
+ /**
+ * Returns the value of the '<em><b>Bar Actions</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Bar Actions</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Bar Actions</em>' containment reference list.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPage_BarActions()
+ * @model containment="true"
+ * @generated
+ */
+ EList<VMNavigationBarButton> getBarActions();
+
+ /**
+ * Returns the value of the '<em><b>Navigate Back</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Navigate Back</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Navigate Back</em>' attribute.
+ * @see #setNavigateBack(Object)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPage_NavigateBack()
+ * @model
+ * @generated
+ */
+ Object getNavigateBack();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getNavigateBack <em>Navigate Back</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Navigate Back</em>' attribute.
+ * @see #getNavigateBack()
+ * @generated
+ */
+ void setNavigateBack(Object value);
+
+ /**
+ * Returns the value of the '<em><b>On Navigate Back</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>On Navigate Back</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>On Navigate Back</em>' attribute.
+ * @see #setOnNavigateBack(long)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPage_OnNavigateBack()
+ * @model
+ * @generated
+ */
+ long getOnNavigateBack();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getOnNavigateBack <em>On Navigate Back</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>On Navigate Back</em>' attribute.
+ * @see #getOnNavigateBack()
+ * @generated
+ */
+ void setOnNavigateBack(long value);
+
+ /**
+ * Returns the value of the '<em><b>Datadescription</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Datadescription</em>' reference isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Datadescription</em>' reference.
+ * @see #setDatadescription(YDatadescription)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPage_Datadescription()
+ * @model
+ * @generated
+ */
+ YDatadescription getDatadescription();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getDatadescription <em>Datadescription</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Datadescription</em>' reference.
+ * @see #getDatadescription()
+ * @generated
+ */
+ void setDatadescription(YDatadescription value);
+
+ /**
+ * Returns the value of the '<em><b>Cell Styles</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Cell Styles</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Cell Styles</em>' containment reference list.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPage_CellStyles()
+ * @model containment="true"
+ * @generated
+ */
+ EList<VMNavigationPageCellStyle> getCellStyles();
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the YEC view model value binding endpoint
+ * @model
+ * @generated
+ */
+ YECViewModelValueBindingEndpoint createValueEndpoint();
+
+
+ /**
+ * Returns the cell style for the given element.
+ *
+ * @param element
+ * the element
+ * @return the cell style
+ */
+ VMNavigationPageCellStyle getCellStyle(YEmbeddable element);
+
+ /**
+ * Adds a new cell style to the internal list of cell styles.
+ *
+ * @param element
+ * the element
+ * @return the VM navigation page cell style
+ */
+ VMNavigationPageCellStyle addCellStyle(YEmbeddable element);
+
+} // VMNavigationPage
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationPageCellStyle.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationPageCellStyle.java
new file mode 100644
index 0000000..dbebfed
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationPageCellStyle.java
@@ -0,0 +1,91 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.osbp.ecview.core.common.model.core.YAlignment;
+import org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Navigation Page Cell Style</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle#getTarget <em>Target</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle#getAlignment <em>Alignment</em>}</li>
+ * </ul>
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPageCellStyle()
+ * @model
+ * @generated
+ */
+public interface VMNavigationPageCellStyle extends EObject {
+ /**
+ * Returns the value of the '<em><b>Target</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Target</em>' reference isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Target</em>' reference.
+ * @see #setTarget(YEmbeddable)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPageCellStyle_Target()
+ * @model required="true"
+ * @generated
+ */
+ YEmbeddable getTarget();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle#getTarget <em>Target</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Target</em>' reference.
+ * @see #getTarget()
+ * @generated
+ */
+ void setTarget(YEmbeddable value);
+
+ /**
+ * Returns the value of the '<em><b>Alignment</b></em>' attribute.
+ * The default value is <code>"UNDEFINED"</code>.
+ * The literals are from the enumeration {@link org.eclipse.osbp.ecview.core.common.model.core.YAlignment}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The alignment of the ui element relative to its grid cell.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Alignment</em>' attribute.
+ * @see org.eclipse.osbp.ecview.core.common.model.core.YAlignment
+ * @see #setAlignment(YAlignment)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationPageCellStyle_Alignment()
+ * @model default="UNDEFINED"
+ * @generated
+ */
+ YAlignment getAlignment();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle#getAlignment <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Alignment</em>' attribute.
+ * @see org.eclipse.osbp.ecview.core.common.model.core.YAlignment
+ * @see #getAlignment()
+ * @generated
+ */
+ void setAlignment(YAlignment value);
+
+} // VMNavigationPageCellStyle
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationRoot.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationRoot.java
new file mode 100644
index 0000000..515b7f2
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMNavigationRoot.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.osbp.ecview.core.common.model.core.YLayout;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Navigation Root</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMNavigationRoot()
+ * @model
+ * @generated
+ */
+public interface VMNavigationRoot extends YLayout, VMNavigationHandler {
+} // VMNavigationRoot
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMSearchPanel.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMSearchPanel.java
new file mode 100644
index 0000000..96fe88c
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMSearchPanel.java
@@ -0,0 +1,168 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.osbp.ecview.core.common.model.core.YLayout;
+import org.eclipse.osbp.ecview.core.common.model.core.YMarginable;
+import org.eclipse.osbp.ecview.core.common.model.core.YSpacingable;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Search Panel</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getEmfNsURI <em>Emf Ns URI</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getTypeQualifiedName <em>Type Qualified Name</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getApplyFilter <em>Apply Filter</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getFilter <em>Filter</em>}</li>
+ * </ul>
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMSearchPanel()
+ * @model
+ * @generated
+ */
+public interface VMSearchPanel extends YLayout, YSpacingable, YMarginable {
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type</em>' attribute.
+ * @see #setType(Class)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMSearchPanel_Type()
+ * @model
+ * @generated
+ */
+ Class<?> getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getType <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type</em>' attribute.
+ * @see #getType()
+ * @generated
+ */
+ void setType(Class<?> value);
+
+ /**
+ * Returns the value of the '<em><b>Emf Ns URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Emf Ns URI</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Emf Ns URI</em>' attribute.
+ * @see #setEmfNsURI(String)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMSearchPanel_EmfNsURI()
+ * @model
+ * @generated
+ */
+ String getEmfNsURI();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getEmfNsURI <em>Emf Ns URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Emf Ns URI</em>' attribute.
+ * @see #getEmfNsURI()
+ * @generated
+ */
+ void setEmfNsURI(String value);
+
+ /**
+ * Returns the value of the '<em><b>Type Qualified Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type Qualified Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type Qualified Name</em>' attribute.
+ * @see #setTypeQualifiedName(String)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMSearchPanel_TypeQualifiedName()
+ * @model
+ * @generated
+ */
+ String getTypeQualifiedName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getTypeQualifiedName <em>Type Qualified Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type Qualified Name</em>' attribute.
+ * @see #getTypeQualifiedName()
+ * @generated
+ */
+ void setTypeQualifiedName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Apply Filter</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Apply Filter</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Apply Filter</em>' attribute.
+ * @see #setApplyFilter(Object)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMSearchPanel_ApplyFilter()
+ * @model transient="true"
+ * @generated
+ */
+ Object getApplyFilter();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getApplyFilter <em>Apply Filter</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Apply Filter</em>' attribute.
+ * @see #getApplyFilter()
+ * @generated
+ */
+ void setApplyFilter(Object value);
+
+ /**
+ * Returns the value of the '<em><b>Filter</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Filter</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Filter</em>' attribute.
+ * @see #setFilter(Object)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMSearchPanel_Filter()
+ * @model transient="true"
+ * @generated
+ */
+ Object getFilter();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getFilter <em>Filter</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Filter</em>' attribute.
+ * @see #getFilter()
+ * @generated
+ */
+ void setFilter(Object value);
+
+} // VMSearchPanel
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMSwitch.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMSwitch.java
new file mode 100644
index 0000000..2fd9ee8
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMSwitch.java
@@ -0,0 +1,86 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.osbp.ecview.core.common.model.core.YField;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.YDatadescription;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Switch</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch#getDatadescription <em>Datadescription</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch#isValue <em>Value</em>}</li>
+ * </ul>
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMSwitch()
+ * @model
+ * @generated
+ */
+public interface VMSwitch extends YField {
+
+ /**
+ * Returns the value of the '<em><b>Datadescription</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Datadescription</em>' reference isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Datadescription</em>' reference.
+ * @see #setDatadescription(YDatadescription)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMSwitch_Datadescription()
+ * @model
+ * @generated
+ */
+ YDatadescription getDatadescription();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch#getDatadescription <em>Datadescription</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Datadescription</em>' reference.
+ * @see #getDatadescription()
+ * @generated
+ */
+ void setDatadescription(YDatadescription value);
+
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(boolean)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMSwitch_Value()
+ * @model
+ * @generated
+ */
+ boolean isValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch#isValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #isValue()
+ * @generated
+ */
+ void setValue(boolean value);
+} // VMSwitch
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMTab.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMTab.java
new file mode 100644
index 0000000..d144c2e
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMTab.java
@@ -0,0 +1,162 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.osbp.ecview.core.common.model.core.YCssAble;
+import org.eclipse.osbp.ecview.core.common.model.core.YElement;
+import org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable;
+import org.eclipse.osbp.ecview.core.common.model.core.YView;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.YDatadescription;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Tab</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getParent <em>Parent</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getEmbeddable <em>Embeddable</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getDatadescription <em>Datadescription</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getOrphanDatadescriptions <em>Orphan Datadescriptions</em>}</li>
+ * </ul>
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMTab()
+ * @model
+ * @generated
+ */
+public interface VMTab extends YElement, YCssAble, VMNavigationHandler {
+ /**
+ * Returns the value of the '<em><b>Parent</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet#getTabs <em>Tabs</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Parent</em>' container reference isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Parent</em>' container reference.
+ * @see #setParent(VMTabSheet)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMTab_Parent()
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet#getTabs
+ * @model opposite="tabs" required="true" transient="false"
+ * @generated
+ */
+ VMTabSheet getParent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getParent <em>Parent</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Parent</em>' container reference.
+ * @see #getParent()
+ * @generated
+ */
+ void setParent(VMTabSheet value);
+
+ /**
+ * Returns the value of the '<em><b>Embeddable</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Embeddable</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Embeddable</em>' containment reference.
+ * @see #setEmbeddable(YEmbeddable)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMTab_Embeddable()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ YEmbeddable getEmbeddable();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getEmbeddable <em>Embeddable</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Embeddable</em>' containment reference.
+ * @see #getEmbeddable()
+ * @generated
+ */
+ void setEmbeddable(YEmbeddable value);
+
+ /**
+ * Returns the value of the '<em><b>Datadescription</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Datadescription</em>' reference isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Datadescription</em>' reference.
+ * @see #setDatadescription(YDatadescription)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMTab_Datadescription()
+ * @model
+ * @generated
+ */
+ YDatadescription getDatadescription();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getDatadescription <em>Datadescription</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Datadescription</em>' reference.
+ * @see #getDatadescription()
+ * @generated
+ */
+ void setDatadescription(YDatadescription value);
+
+ /**
+ * Returns the value of the '<em><b>Orphan Datadescriptions</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.osbp.ecview.core.common.model.datatypes.YDatadescription}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Orphan Datadescriptions</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Orphan Datadescriptions</em>' containment reference list.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMTab_OrphanDatadescriptions()
+ * @model containment="true"
+ * @generated
+ */
+ EList<YDatadescription> getOrphanDatadescriptions();
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the view
+ * @model kind="operation"
+ * @generated
+ */
+ YView getView();
+
+ /**
+ * Sets the label by creating a new datadescription.
+ *
+ * @param label
+ * the new label
+ */
+ public void setLabel(String label);
+
+ /**
+ * Sets the label i18nKey by creating a new datadescription.
+ *
+ * @param i18nKey
+ * the new label i18n key
+ */
+ public void setLabelI18nKey(String i18nKey);
+
+} // VMTab
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMTabSheet.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMTabSheet.java
new file mode 100644
index 0000000..2641993
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMTabSheet.java
@@ -0,0 +1,52 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Tab Sheet</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet#getTabs <em>Tabs</em>}</li>
+ * </ul>
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMTabSheet()
+ * @model
+ * @generated
+ */
+public interface VMTabSheet extends YEmbeddable {
+ /**
+ * Returns the value of the '<em><b>Tabs</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getParent <em>Parent</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Tabs</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ *
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Tabs</em>' containment reference list.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMTabSheet_Tabs()
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getParent
+ * @model opposite="parent" containment="true"
+ * @generated
+ */
+ EList<VMTab> getTabs();
+
+} // VMTabSheet
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMVerticalComponentGroup.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMVerticalComponentGroup.java
new file mode 100644
index 0000000..0baa3e4
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VMVerticalComponentGroup.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+import org.eclipse.osbp.ecview.core.common.model.core.YLayout;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VM Vertical Component Group</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#getVMVerticalComponentGroup()
+ * @model
+ * @generated
+ */
+public interface VMVerticalComponentGroup extends YLayout {
+} // VMVerticalComponentGroup
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VaadinMobileFactory.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VaadinMobileFactory.java
new file mode 100644
index 0000000..6bb15af
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VaadinMobileFactory.java
@@ -0,0 +1,149 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+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.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage
+ * @generated
+ */
+public interface VaadinMobileFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ VaadinMobileFactory eINSTANCE = org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobileFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>VM Horizontal Button Group</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VM Horizontal Button Group</em>'.
+ * @generated
+ */
+ VMHorizontalButtonGroup createVMHorizontalButtonGroup();
+
+ /**
+ * Returns a new object of class '<em>VM Switch</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VM Switch</em>'.
+ * @generated
+ */
+ VMSwitch createVMSwitch();
+
+ /**
+ * Returns a new object of class '<em>VM Vertical Component Group</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VM Vertical Component Group</em>'.
+ * @generated
+ */
+ VMVerticalComponentGroup createVMVerticalComponentGroup();
+
+ /**
+ * Returns a new object of class '<em>VM Tab Sheet</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VM Tab Sheet</em>'.
+ * @generated
+ */
+ VMTabSheet createVMTabSheet();
+
+ /**
+ * Returns a new object of class '<em>VM Tab</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VM Tab</em>'.
+ * @generated
+ */
+ VMTab createVMTab();
+
+ /**
+ * Returns a new object of class '<em>VM Navigation Page</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VM Navigation Page</em>'.
+ * @generated
+ */
+ VMNavigationPage createVMNavigationPage();
+
+ /**
+ * Returns a new object of class '<em>VM Navigation Page Cell Style</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VM Navigation Page Cell Style</em>'.
+ * @generated
+ */
+ VMNavigationPageCellStyle createVMNavigationPageCellStyle();
+
+ /**
+ * Returns a new object of class '<em>VM Navigation Button</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VM Navigation Button</em>'.
+ * @generated
+ */
+ VMNavigationButton createVMNavigationButton();
+
+ /**
+ * Returns a new object of class '<em>VM Navigation Command</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VM Navigation Command</em>'.
+ * @generated
+ */
+ VMNavigationCommand createVMNavigationCommand();
+
+ /**
+ * Returns a new object of class '<em>VM Search Panel</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VM Search Panel</em>'.
+ * @generated
+ */
+ VMSearchPanel createVMSearchPanel();
+
+ /**
+ * Returns a new object of class '<em>VM Navigation Root</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VM Navigation Root</em>'.
+ * @generated
+ */
+ VMNavigationRoot createVMNavigationRoot();
+
+ /**
+ * Returns a new object of class '<em>VM Navigation Bar Button</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VM Navigation Bar Button</em>'.
+ * @generated
+ */
+ VMNavigationBarButton createVMNavigationBarButton();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ VaadinMobilePackage getVaadinMobilePackage();
+
+} //VaadinMobileFactory
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VaadinMobilePackage.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VaadinMobilePackage.java
new file mode 100644
index 0000000..b0bdc35
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/VaadinMobilePackage.java
@@ -0,0 +1,3055 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model;
+
+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.osbp.ecview.core.common.model.core.CoreModelPackage;
+
+/**
+ * <!-- 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.osbp.mobile.vaadin.ecview.model.VaadinMobileFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface VaadinMobilePackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "model";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://osbp.org/ecview/v1/vaadin/mobile";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "model";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ VaadinMobilePackage eINSTANCE = org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMHorizontalButtonGroupImpl <em>VM Horizontal Button Group</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMHorizontalButtonGroupImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMHorizontalButtonGroup()
+ * @generated
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP = 0;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__ID = CoreModelPackage.YLAYOUT__ID;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__NAME = CoreModelPackage.YLAYOUT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__TAGS = CoreModelPackage.YLAYOUT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__PROPERTIES = CoreModelPackage.YLAYOUT__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Css Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__CSS_CLASS = CoreModelPackage.YLAYOUT__CSS_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Css ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__CSS_ID = CoreModelPackage.YLAYOUT__CSS_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__INITIAL_VISIBLE = CoreModelPackage.YLAYOUT__INITIAL_VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__VISIBLE = CoreModelPackage.YLAYOUT__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Authorization Group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__AUTHORIZATION_GROUP = CoreModelPackage.YLAYOUT__AUTHORIZATION_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Authorization Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__AUTHORIZATION_ID = CoreModelPackage.YLAYOUT__AUTHORIZATION_ID;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datatypes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__ORPHAN_DATATYPES = CoreModelPackage.YLAYOUT__ORPHAN_DATATYPES;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datadescriptions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__ORPHAN_DATADESCRIPTIONS = CoreModelPackage.YLAYOUT__ORPHAN_DATADESCRIPTIONS;
+
+ /**
+ * The feature id for the '<em><b>Memento Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__MEMENTO_ENABLED = CoreModelPackage.YLAYOUT__MEMENTO_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Memento Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__MEMENTO_ID = CoreModelPackage.YLAYOUT__MEMENTO_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__INITIAL_EDITABLE = CoreModelPackage.YLAYOUT__INITIAL_EDITABLE;
+
+ /**
+ * The feature id for the '<em><b>Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__EDITABLE = CoreModelPackage.YLAYOUT__EDITABLE;
+
+ /**
+ * The feature id for the '<em><b>Initial Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__INITIAL_ENABLED = CoreModelPackage.YLAYOUT__INITIAL_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__ENABLED = CoreModelPackage.YLAYOUT__ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Elements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP__ELEMENTS = CoreModelPackage.YLAYOUT__ELEMENTS;
+
+ /**
+ * The number of structural features of the '<em>VM Horizontal Button Group</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_HORIZONTAL_BUTTON_GROUP_FEATURE_COUNT = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 0;
+
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSwitchImpl <em>VM Switch</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSwitchImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMSwitch()
+ * @generated
+ */
+ int VM_SWITCH = 1;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__ID = CoreModelPackage.YFIELD__ID;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__NAME = CoreModelPackage.YFIELD__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__TAGS = CoreModelPackage.YFIELD__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__PROPERTIES = CoreModelPackage.YFIELD__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Css Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__CSS_CLASS = CoreModelPackage.YFIELD__CSS_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Css ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__CSS_ID = CoreModelPackage.YFIELD__CSS_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__INITIAL_VISIBLE = CoreModelPackage.YFIELD__INITIAL_VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__VISIBLE = CoreModelPackage.YFIELD__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Authorization Group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__AUTHORIZATION_GROUP = CoreModelPackage.YFIELD__AUTHORIZATION_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Authorization Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__AUTHORIZATION_ID = CoreModelPackage.YFIELD__AUTHORIZATION_ID;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datatypes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__ORPHAN_DATATYPES = CoreModelPackage.YFIELD__ORPHAN_DATATYPES;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datadescriptions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__ORPHAN_DATADESCRIPTIONS = CoreModelPackage.YFIELD__ORPHAN_DATADESCRIPTIONS;
+
+ /**
+ * The feature id for the '<em><b>Memento Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__MEMENTO_ENABLED = CoreModelPackage.YFIELD__MEMENTO_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Memento Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__MEMENTO_ID = CoreModelPackage.YFIELD__MEMENTO_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__INITIAL_EDITABLE = CoreModelPackage.YFIELD__INITIAL_EDITABLE;
+
+ /**
+ * The feature id for the '<em><b>Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__EDITABLE = CoreModelPackage.YFIELD__EDITABLE;
+
+ /**
+ * The feature id for the '<em><b>Initial Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__INITIAL_ENABLED = CoreModelPackage.YFIELD__INITIAL_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__ENABLED = CoreModelPackage.YFIELD__ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Tab Index</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__TAB_INDEX = CoreModelPackage.YFIELD__TAB_INDEX;
+
+ /**
+ * The feature id for the '<em><b>Validators</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__VALIDATORS = CoreModelPackage.YFIELD__VALIDATORS;
+
+ /**
+ * The feature id for the '<em><b>Internal Validators</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__INTERNAL_VALIDATORS = CoreModelPackage.YFIELD__INTERNAL_VALIDATORS;
+
+ /**
+ * The feature id for the '<em><b>Converter</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__CONVERTER = CoreModelPackage.YFIELD__CONVERTER;
+
+ /**
+ * The feature id for the '<em><b>Datadescription</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__DATADESCRIPTION = CoreModelPackage.YFIELD_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH__VALUE = CoreModelPackage.YFIELD_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>VM Switch</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SWITCH_FEATURE_COUNT = CoreModelPackage.YFIELD_FEATURE_COUNT + 2;
+
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMVerticalComponentGroupImpl <em>VM Vertical Component Group</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMVerticalComponentGroupImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMVerticalComponentGroup()
+ * @generated
+ */
+ int VM_VERTICAL_COMPONENT_GROUP = 2;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__ID = CoreModelPackage.YLAYOUT__ID;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__NAME = CoreModelPackage.YLAYOUT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__TAGS = CoreModelPackage.YLAYOUT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__PROPERTIES = CoreModelPackage.YLAYOUT__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Css Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__CSS_CLASS = CoreModelPackage.YLAYOUT__CSS_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Css ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__CSS_ID = CoreModelPackage.YLAYOUT__CSS_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__INITIAL_VISIBLE = CoreModelPackage.YLAYOUT__INITIAL_VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__VISIBLE = CoreModelPackage.YLAYOUT__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Authorization Group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__AUTHORIZATION_GROUP = CoreModelPackage.YLAYOUT__AUTHORIZATION_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Authorization Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__AUTHORIZATION_ID = CoreModelPackage.YLAYOUT__AUTHORIZATION_ID;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datatypes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__ORPHAN_DATATYPES = CoreModelPackage.YLAYOUT__ORPHAN_DATATYPES;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datadescriptions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__ORPHAN_DATADESCRIPTIONS = CoreModelPackage.YLAYOUT__ORPHAN_DATADESCRIPTIONS;
+
+ /**
+ * The feature id for the '<em><b>Memento Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__MEMENTO_ENABLED = CoreModelPackage.YLAYOUT__MEMENTO_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Memento Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__MEMENTO_ID = CoreModelPackage.YLAYOUT__MEMENTO_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__INITIAL_EDITABLE = CoreModelPackage.YLAYOUT__INITIAL_EDITABLE;
+
+ /**
+ * The feature id for the '<em><b>Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__EDITABLE = CoreModelPackage.YLAYOUT__EDITABLE;
+
+ /**
+ * The feature id for the '<em><b>Initial Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__INITIAL_ENABLED = CoreModelPackage.YLAYOUT__INITIAL_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__ENABLED = CoreModelPackage.YLAYOUT__ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Elements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP__ELEMENTS = CoreModelPackage.YLAYOUT__ELEMENTS;
+
+ /**
+ * The number of structural features of the '<em>VM Vertical Component Group</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_VERTICAL_COMPONENT_GROUP_FEATURE_COUNT = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabSheetImpl <em>VM Tab Sheet</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabSheetImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMTabSheet()
+ * @generated
+ */
+ int VM_TAB_SHEET = 3;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__ID = CoreModelPackage.YEMBEDDABLE__ID;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__NAME = CoreModelPackage.YEMBEDDABLE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__TAGS = CoreModelPackage.YEMBEDDABLE__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__PROPERTIES = CoreModelPackage.YEMBEDDABLE__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Css Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__CSS_CLASS = CoreModelPackage.YEMBEDDABLE__CSS_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Css ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__CSS_ID = CoreModelPackage.YEMBEDDABLE__CSS_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__INITIAL_VISIBLE = CoreModelPackage.YEMBEDDABLE__INITIAL_VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__VISIBLE = CoreModelPackage.YEMBEDDABLE__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Authorization Group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__AUTHORIZATION_GROUP = CoreModelPackage.YEMBEDDABLE__AUTHORIZATION_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Authorization Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__AUTHORIZATION_ID = CoreModelPackage.YEMBEDDABLE__AUTHORIZATION_ID;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datatypes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__ORPHAN_DATATYPES = CoreModelPackage.YEMBEDDABLE__ORPHAN_DATATYPES;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datadescriptions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__ORPHAN_DATADESCRIPTIONS = CoreModelPackage.YEMBEDDABLE__ORPHAN_DATADESCRIPTIONS;
+
+ /**
+ * The feature id for the '<em><b>Memento Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__MEMENTO_ENABLED = CoreModelPackage.YEMBEDDABLE__MEMENTO_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Memento Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__MEMENTO_ID = CoreModelPackage.YEMBEDDABLE__MEMENTO_ID;
+
+ /**
+ * The feature id for the '<em><b>Tabs</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET__TABS = CoreModelPackage.YEMBEDDABLE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>VM Tab Sheet</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_SHEET_FEATURE_COUNT = CoreModelPackage.YEMBEDDABLE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl <em>VM Tab</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMTab()
+ * @generated
+ */
+ int VM_TAB = 4;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB__ID = CoreModelPackage.YELEMENT__ID;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB__NAME = CoreModelPackage.YELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB__TAGS = CoreModelPackage.YELEMENT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB__PROPERTIES = CoreModelPackage.YELEMENT__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Css Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB__CSS_CLASS = CoreModelPackage.YELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Css ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB__CSS_ID = CoreModelPackage.YELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Parent</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB__PARENT = CoreModelPackage.YELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Embeddable</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB__EMBEDDABLE = CoreModelPackage.YELEMENT_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Datadescription</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB__DATADESCRIPTION = CoreModelPackage.YELEMENT_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datadescriptions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB__ORPHAN_DATADESCRIPTIONS = CoreModelPackage.YELEMENT_FEATURE_COUNT + 5;
+
+ /**
+ * The number of structural features of the '<em>VM Tab</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_TAB_FEATURE_COUNT = CoreModelPackage.YELEMENT_FEATURE_COUNT + 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl <em>VM Navigation Page</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationPage()
+ * @generated
+ */
+ int VM_NAVIGATION_PAGE = 5;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__ID = CoreModelPackage.YLAYOUT__ID;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__NAME = CoreModelPackage.YLAYOUT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__TAGS = CoreModelPackage.YLAYOUT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__PROPERTIES = CoreModelPackage.YLAYOUT__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Css Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__CSS_CLASS = CoreModelPackage.YLAYOUT__CSS_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Css ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__CSS_ID = CoreModelPackage.YLAYOUT__CSS_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__INITIAL_VISIBLE = CoreModelPackage.YLAYOUT__INITIAL_VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__VISIBLE = CoreModelPackage.YLAYOUT__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Authorization Group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__AUTHORIZATION_GROUP = CoreModelPackage.YLAYOUT__AUTHORIZATION_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Authorization Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__AUTHORIZATION_ID = CoreModelPackage.YLAYOUT__AUTHORIZATION_ID;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datatypes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__ORPHAN_DATATYPES = CoreModelPackage.YLAYOUT__ORPHAN_DATATYPES;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datadescriptions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__ORPHAN_DATADESCRIPTIONS = CoreModelPackage.YLAYOUT__ORPHAN_DATADESCRIPTIONS;
+
+ /**
+ * The feature id for the '<em><b>Memento Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__MEMENTO_ENABLED = CoreModelPackage.YLAYOUT__MEMENTO_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Memento Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__MEMENTO_ID = CoreModelPackage.YLAYOUT__MEMENTO_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__INITIAL_EDITABLE = CoreModelPackage.YLAYOUT__INITIAL_EDITABLE;
+
+ /**
+ * The feature id for the '<em><b>Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__EDITABLE = CoreModelPackage.YLAYOUT__EDITABLE;
+
+ /**
+ * The feature id for the '<em><b>Initial Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__INITIAL_ENABLED = CoreModelPackage.YLAYOUT__INITIAL_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__ENABLED = CoreModelPackage.YLAYOUT__ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Elements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__ELEMENTS = CoreModelPackage.YLAYOUT__ELEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__TYPE = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Emf Ns URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__EMF_NS_URI = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Type Qualified Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__TYPE_QUALIFIED_NAME = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__VALUE = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Bar Actions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__BAR_ACTIONS = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Navigate Back</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__NAVIGATE_BACK = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>On Navigate Back</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__ON_NAVIGATE_BACK = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the '<em><b>Datadescription</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__DATADESCRIPTION = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the '<em><b>Cell Styles</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE__CELL_STYLES = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 8;
+
+ /**
+ * The number of structural features of the '<em>VM Navigation Page</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE_FEATURE_COUNT = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 9;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageCellStyleImpl <em>VM Navigation Page Cell Style</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageCellStyleImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationPageCellStyle()
+ * @generated
+ */
+ int VM_NAVIGATION_PAGE_CELL_STYLE = 6;
+
+ /**
+ * The feature id for the '<em><b>Target</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE_CELL_STYLE__TARGET = 0;
+
+ /**
+ * The feature id for the '<em><b>Alignment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE_CELL_STYLE__ALIGNMENT = 1;
+
+ /**
+ * The number of structural features of the '<em>VM Navigation Page Cell Style</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_PAGE_CELL_STYLE_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationButtonImpl <em>VM Navigation Button</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationButtonImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationButton()
+ * @generated
+ */
+ int VM_NAVIGATION_BUTTON = 7;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__ID = CoreModelPackage.YACTION__ID;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__NAME = CoreModelPackage.YACTION__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__TAGS = CoreModelPackage.YACTION__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__PROPERTIES = CoreModelPackage.YACTION__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Css Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__CSS_CLASS = CoreModelPackage.YACTION__CSS_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Css ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__CSS_ID = CoreModelPackage.YACTION__CSS_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__INITIAL_VISIBLE = CoreModelPackage.YACTION__INITIAL_VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__VISIBLE = CoreModelPackage.YACTION__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Authorization Group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__AUTHORIZATION_GROUP = CoreModelPackage.YACTION__AUTHORIZATION_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Authorization Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__AUTHORIZATION_ID = CoreModelPackage.YACTION__AUTHORIZATION_ID;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datatypes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__ORPHAN_DATATYPES = CoreModelPackage.YACTION__ORPHAN_DATATYPES;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datadescriptions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__ORPHAN_DATADESCRIPTIONS = CoreModelPackage.YACTION__ORPHAN_DATADESCRIPTIONS;
+
+ /**
+ * The feature id for the '<em><b>Memento Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__MEMENTO_ENABLED = CoreModelPackage.YACTION__MEMENTO_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Memento Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__MEMENTO_ID = CoreModelPackage.YACTION__MEMENTO_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__INITIAL_ENABLED = CoreModelPackage.YACTION__INITIAL_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__ENABLED = CoreModelPackage.YACTION__ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Page</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__PAGE = CoreModelPackage.YACTION_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Datadescription</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__DATADESCRIPTION = CoreModelPackage.YACTION_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Last Click Time</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON__LAST_CLICK_TIME = CoreModelPackage.YACTION_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>VM Navigation Button</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BUTTON_FEATURE_COUNT = CoreModelPackage.YACTION_FEATURE_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationCommandImpl <em>VM Navigation Command</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationCommandImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationCommand()
+ * @generated
+ */
+ int VM_NAVIGATION_COMMAND = 8;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_COMMAND__ID = CoreModelPackage.YCOMMAND__ID;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_COMMAND__NAME = CoreModelPackage.YCOMMAND__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_COMMAND__TAGS = CoreModelPackage.YCOMMAND__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_COMMAND__PROPERTIES = CoreModelPackage.YCOMMAND__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Navigation Handler</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_COMMAND__NAVIGATION_HANDLER = CoreModelPackage.YCOMMAND_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Target Page</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_COMMAND__TARGET_PAGE = CoreModelPackage.YCOMMAND_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_COMMAND__VALUE = CoreModelPackage.YCOMMAND_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>VM Navigation Command</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_COMMAND_FEATURE_COUNT = CoreModelPackage.YCOMMAND_FEATURE_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationHandler <em>VM Navigation Handler</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationHandler
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationHandler()
+ * @generated
+ */
+ int VM_NAVIGATION_HANDLER = 9;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_HANDLER__ID = CoreModelPackage.YELEMENT__ID;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_HANDLER__NAME = CoreModelPackage.YELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_HANDLER__TAGS = CoreModelPackage.YELEMENT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_HANDLER__PROPERTIES = CoreModelPackage.YELEMENT__PROPERTIES;
+
+ /**
+ * The number of structural features of the '<em>VM Navigation Handler</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_HANDLER_FEATURE_COUNT = CoreModelPackage.YELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSearchPanelImpl <em>VM Search Panel</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSearchPanelImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMSearchPanel()
+ * @generated
+ */
+ int VM_SEARCH_PANEL = 10;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__ID = CoreModelPackage.YLAYOUT__ID;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__NAME = CoreModelPackage.YLAYOUT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__TAGS = CoreModelPackage.YLAYOUT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__PROPERTIES = CoreModelPackage.YLAYOUT__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Css Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__CSS_CLASS = CoreModelPackage.YLAYOUT__CSS_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Css ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__CSS_ID = CoreModelPackage.YLAYOUT__CSS_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__INITIAL_VISIBLE = CoreModelPackage.YLAYOUT__INITIAL_VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__VISIBLE = CoreModelPackage.YLAYOUT__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Authorization Group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__AUTHORIZATION_GROUP = CoreModelPackage.YLAYOUT__AUTHORIZATION_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Authorization Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__AUTHORIZATION_ID = CoreModelPackage.YLAYOUT__AUTHORIZATION_ID;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datatypes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__ORPHAN_DATATYPES = CoreModelPackage.YLAYOUT__ORPHAN_DATATYPES;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datadescriptions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__ORPHAN_DATADESCRIPTIONS = CoreModelPackage.YLAYOUT__ORPHAN_DATADESCRIPTIONS;
+
+ /**
+ * The feature id for the '<em><b>Memento Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__MEMENTO_ENABLED = CoreModelPackage.YLAYOUT__MEMENTO_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Memento Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__MEMENTO_ID = CoreModelPackage.YLAYOUT__MEMENTO_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__INITIAL_EDITABLE = CoreModelPackage.YLAYOUT__INITIAL_EDITABLE;
+
+ /**
+ * The feature id for the '<em><b>Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__EDITABLE = CoreModelPackage.YLAYOUT__EDITABLE;
+
+ /**
+ * The feature id for the '<em><b>Initial Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__INITIAL_ENABLED = CoreModelPackage.YLAYOUT__INITIAL_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__ENABLED = CoreModelPackage.YLAYOUT__ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Elements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__ELEMENTS = CoreModelPackage.YLAYOUT__ELEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Spacing</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__SPACING = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Margin</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__MARGIN = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__TYPE = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Emf Ns URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__EMF_NS_URI = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Type Qualified Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__TYPE_QUALIFIED_NAME = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Apply Filter</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__APPLY_FILTER = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Filter</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL__FILTER = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 6;
+
+ /**
+ * The number of structural features of the '<em>VM Search Panel</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_SEARCH_PANEL_FEATURE_COUNT = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 7;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationRootImpl <em>VM Navigation Root</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationRootImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationRoot()
+ * @generated
+ */
+ int VM_NAVIGATION_ROOT = 11;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__ID = CoreModelPackage.YLAYOUT__ID;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__NAME = CoreModelPackage.YLAYOUT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__TAGS = CoreModelPackage.YLAYOUT__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__PROPERTIES = CoreModelPackage.YLAYOUT__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Css Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__CSS_CLASS = CoreModelPackage.YLAYOUT__CSS_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Css ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__CSS_ID = CoreModelPackage.YLAYOUT__CSS_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__INITIAL_VISIBLE = CoreModelPackage.YLAYOUT__INITIAL_VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__VISIBLE = CoreModelPackage.YLAYOUT__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Authorization Group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__AUTHORIZATION_GROUP = CoreModelPackage.YLAYOUT__AUTHORIZATION_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Authorization Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__AUTHORIZATION_ID = CoreModelPackage.YLAYOUT__AUTHORIZATION_ID;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datatypes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__ORPHAN_DATATYPES = CoreModelPackage.YLAYOUT__ORPHAN_DATATYPES;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datadescriptions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__ORPHAN_DATADESCRIPTIONS = CoreModelPackage.YLAYOUT__ORPHAN_DATADESCRIPTIONS;
+
+ /**
+ * The feature id for the '<em><b>Memento Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__MEMENTO_ENABLED = CoreModelPackage.YLAYOUT__MEMENTO_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Memento Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__MEMENTO_ID = CoreModelPackage.YLAYOUT__MEMENTO_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__INITIAL_EDITABLE = CoreModelPackage.YLAYOUT__INITIAL_EDITABLE;
+
+ /**
+ * The feature id for the '<em><b>Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__EDITABLE = CoreModelPackage.YLAYOUT__EDITABLE;
+
+ /**
+ * The feature id for the '<em><b>Initial Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__INITIAL_ENABLED = CoreModelPackage.YLAYOUT__INITIAL_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__ENABLED = CoreModelPackage.YLAYOUT__ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Elements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT__ELEMENTS = CoreModelPackage.YLAYOUT__ELEMENTS;
+
+ /**
+ * The number of structural features of the '<em>VM Navigation Root</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_ROOT_FEATURE_COUNT = CoreModelPackage.YLAYOUT_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationBarButtonImpl <em>VM Navigation Bar Button</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationBarButtonImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationBarButton()
+ * @generated
+ */
+ int VM_NAVIGATION_BAR_BUTTON = 12;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__ID = CoreModelPackage.YACTION__ID;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__NAME = CoreModelPackage.YACTION__NAME;
+
+ /**
+ * The feature id for the '<em><b>Tags</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__TAGS = CoreModelPackage.YACTION__TAGS;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__PROPERTIES = CoreModelPackage.YACTION__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Css Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__CSS_CLASS = CoreModelPackage.YACTION__CSS_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Css ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__CSS_ID = CoreModelPackage.YACTION__CSS_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__INITIAL_VISIBLE = CoreModelPackage.YACTION__INITIAL_VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__VISIBLE = CoreModelPackage.YACTION__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Authorization Group</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__AUTHORIZATION_GROUP = CoreModelPackage.YACTION__AUTHORIZATION_GROUP;
+
+ /**
+ * The feature id for the '<em><b>Authorization Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__AUTHORIZATION_ID = CoreModelPackage.YACTION__AUTHORIZATION_ID;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datatypes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__ORPHAN_DATATYPES = CoreModelPackage.YACTION__ORPHAN_DATATYPES;
+
+ /**
+ * The feature id for the '<em><b>Orphan Datadescriptions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__ORPHAN_DATADESCRIPTIONS = CoreModelPackage.YACTION__ORPHAN_DATADESCRIPTIONS;
+
+ /**
+ * The feature id for the '<em><b>Memento Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__MEMENTO_ENABLED = CoreModelPackage.YACTION__MEMENTO_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Memento Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__MEMENTO_ID = CoreModelPackage.YACTION__MEMENTO_ID;
+
+ /**
+ * The feature id for the '<em><b>Initial Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__INITIAL_ENABLED = CoreModelPackage.YACTION__INITIAL_ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Enabled</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__ENABLED = CoreModelPackage.YACTION__ENABLED;
+
+ /**
+ * The feature id for the '<em><b>Initial Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__INITIAL_EDITABLE = CoreModelPackage.YACTION_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Editable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__EDITABLE = CoreModelPackage.YACTION_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Datadescription</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__DATADESCRIPTION = CoreModelPackage.YACTION_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Last Click Time</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON__LAST_CLICK_TIME = CoreModelPackage.YACTION_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>VM Navigation Bar Button</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VM_NAVIGATION_BAR_BUTTON_FEATURE_COUNT = CoreModelPackage.YACTION_FEATURE_COUNT + 4;
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMHorizontalButtonGroup <em>VM Horizontal Button Group</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Horizontal Button Group</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMHorizontalButtonGroup
+ * @generated
+ */
+ EClass getVMHorizontalButtonGroup();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch <em>VM Switch</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Switch</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch
+ * @generated
+ */
+ EClass getVMSwitch();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch#getDatadescription <em>Datadescription</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Datadescription</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch#getDatadescription()
+ * @see #getVMSwitch()
+ * @generated
+ */
+ EReference getVMSwitch_Datadescription();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch#isValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch#isValue()
+ * @see #getVMSwitch()
+ * @generated
+ */
+ EAttribute getVMSwitch_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMVerticalComponentGroup <em>VM Vertical Component Group</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Vertical Component Group</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMVerticalComponentGroup
+ * @generated
+ */
+ EClass getVMVerticalComponentGroup();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet <em>VM Tab Sheet</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Tab Sheet</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet
+ * @generated
+ */
+ EClass getVMTabSheet();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet#getTabs <em>Tabs</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Tabs</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet#getTabs()
+ * @see #getVMTabSheet()
+ * @generated
+ */
+ EReference getVMTabSheet_Tabs();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab <em>VM Tab</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Tab</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab
+ * @generated
+ */
+ EClass getVMTab();
+
+ /**
+ * Returns the meta object for the container reference '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getParent <em>Parent</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Parent</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getParent()
+ * @see #getVMTab()
+ * @generated
+ */
+ EReference getVMTab_Parent();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getEmbeddable <em>Embeddable</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Embeddable</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getEmbeddable()
+ * @see #getVMTab()
+ * @generated
+ */
+ EReference getVMTab_Embeddable();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getDatadescription <em>Datadescription</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Datadescription</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getDatadescription()
+ * @see #getVMTab()
+ * @generated
+ */
+ EReference getVMTab_Datadescription();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getOrphanDatadescriptions <em>Orphan Datadescriptions</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Orphan Datadescriptions</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab#getOrphanDatadescriptions()
+ * @see #getVMTab()
+ * @generated
+ */
+ EReference getVMTab_OrphanDatadescriptions();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage <em>VM Navigation Page</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Navigation Page</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage
+ * @generated
+ */
+ EClass getVMNavigationPage();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Type</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getType()
+ * @see #getVMNavigationPage()
+ * @generated
+ */
+ EAttribute getVMNavigationPage_Type();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getEmfNsURI <em>Emf Ns URI</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Emf Ns URI</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getEmfNsURI()
+ * @see #getVMNavigationPage()
+ * @generated
+ */
+ EAttribute getVMNavigationPage_EmfNsURI();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getTypeQualifiedName <em>Type Qualified Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Type Qualified Name</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getTypeQualifiedName()
+ * @see #getVMNavigationPage()
+ * @generated
+ */
+ EAttribute getVMNavigationPage_TypeQualifiedName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getValue()
+ * @see #getVMNavigationPage()
+ * @generated
+ */
+ EAttribute getVMNavigationPage_Value();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getBarActions <em>Bar Actions</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Bar Actions</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getBarActions()
+ * @see #getVMNavigationPage()
+ * @generated
+ */
+ EReference getVMNavigationPage_BarActions();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getNavigateBack <em>Navigate Back</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Navigate Back</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getNavigateBack()
+ * @see #getVMNavigationPage()
+ * @generated
+ */
+ EAttribute getVMNavigationPage_NavigateBack();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getOnNavigateBack <em>On Navigate Back</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>On Navigate Back</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getOnNavigateBack()
+ * @see #getVMNavigationPage()
+ * @generated
+ */
+ EAttribute getVMNavigationPage_OnNavigateBack();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getDatadescription <em>Datadescription</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Datadescription</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getDatadescription()
+ * @see #getVMNavigationPage()
+ * @generated
+ */
+ EReference getVMNavigationPage_Datadescription();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getCellStyles <em>Cell Styles</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Cell Styles</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getCellStyles()
+ * @see #getVMNavigationPage()
+ * @generated
+ */
+ EReference getVMNavigationPage_CellStyles();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle <em>VM Navigation Page Cell Style</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Navigation Page Cell Style</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle
+ * @generated
+ */
+ EClass getVMNavigationPageCellStyle();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle#getTarget <em>Target</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Target</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle#getTarget()
+ * @see #getVMNavigationPageCellStyle()
+ * @generated
+ */
+ EReference getVMNavigationPageCellStyle_Target();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle#getAlignment <em>Alignment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Alignment</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle#getAlignment()
+ * @see #getVMNavigationPageCellStyle()
+ * @generated
+ */
+ EAttribute getVMNavigationPageCellStyle_Alignment();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton <em>VM Navigation Button</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Navigation Button</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton
+ * @generated
+ */
+ EClass getVMNavigationButton();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton#getPage <em>Page</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Page</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton#getPage()
+ * @see #getVMNavigationButton()
+ * @generated
+ */
+ EReference getVMNavigationButton_Page();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton#getDatadescription <em>Datadescription</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Datadescription</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton#getDatadescription()
+ * @see #getVMNavigationButton()
+ * @generated
+ */
+ EReference getVMNavigationButton_Datadescription();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton#getLastClickTime <em>Last Click Time</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Last Click Time</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton#getLastClickTime()
+ * @see #getVMNavigationButton()
+ * @generated
+ */
+ EAttribute getVMNavigationButton_LastClickTime();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand <em>VM Navigation Command</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Navigation Command</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand
+ * @generated
+ */
+ EClass getVMNavigationCommand();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#getTargetPage <em>Target Page</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Target Page</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#getTargetPage()
+ * @see #getVMNavigationCommand()
+ * @generated
+ */
+ EReference getVMNavigationCommand_TargetPage();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#getValue()
+ * @see #getVMNavigationCommand()
+ * @generated
+ */
+ EAttribute getVMNavigationCommand_Value();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#getNavigationHandler <em>Navigation Handler</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Navigation Handler</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#getNavigationHandler()
+ * @see #getVMNavigationCommand()
+ * @generated
+ */
+ EReference getVMNavigationCommand_NavigationHandler();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationHandler <em>VM Navigation Handler</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Navigation Handler</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationHandler
+ * @generated
+ */
+ EClass getVMNavigationHandler();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel <em>VM Search Panel</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Search Panel</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel
+ * @generated
+ */
+ EClass getVMSearchPanel();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Type</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getType()
+ * @see #getVMSearchPanel()
+ * @generated
+ */
+ EAttribute getVMSearchPanel_Type();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getEmfNsURI <em>Emf Ns URI</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Emf Ns URI</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getEmfNsURI()
+ * @see #getVMSearchPanel()
+ * @generated
+ */
+ EAttribute getVMSearchPanel_EmfNsURI();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getTypeQualifiedName <em>Type Qualified Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Type Qualified Name</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getTypeQualifiedName()
+ * @see #getVMSearchPanel()
+ * @generated
+ */
+ EAttribute getVMSearchPanel_TypeQualifiedName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getApplyFilter <em>Apply Filter</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Apply Filter</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getApplyFilter()
+ * @see #getVMSearchPanel()
+ * @generated
+ */
+ EAttribute getVMSearchPanel_ApplyFilter();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getFilter <em>Filter</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Filter</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel#getFilter()
+ * @see #getVMSearchPanel()
+ * @generated
+ */
+ EAttribute getVMSearchPanel_Filter();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationRoot <em>VM Navigation Root</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Navigation Root</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationRoot
+ * @generated
+ */
+ EClass getVMNavigationRoot();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton <em>VM Navigation Bar Button</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VM Navigation Bar Button</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton
+ * @generated
+ */
+ EClass getVMNavigationBarButton();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton#getDatadescription <em>Datadescription</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Datadescription</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton#getDatadescription()
+ * @see #getVMNavigationBarButton()
+ * @generated
+ */
+ EReference getVMNavigationBarButton_Datadescription();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton#getLastClickTime <em>Last Click Time</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Last Click Time</em>'.
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton#getLastClickTime()
+ * @see #getVMNavigationBarButton()
+ * @generated
+ */
+ EAttribute getVMNavigationBarButton_LastClickTime();
+
+ /**
+ * 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
+ */
+ VaadinMobileFactory getVaadinMobileFactory();
+
+ /**
+ * <!-- 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.osbp.mobile.vaadin.ecview.model.impl.VMHorizontalButtonGroupImpl <em>VM Horizontal Button Group</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMHorizontalButtonGroupImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMHorizontalButtonGroup()
+ * @generated
+ */
+ EClass VM_HORIZONTAL_BUTTON_GROUP = eINSTANCE.getVMHorizontalButtonGroup();
+ /**
+ * The meta object literal for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSwitchImpl <em>VM Switch</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSwitchImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMSwitch()
+ * @generated
+ */
+ EClass VM_SWITCH = eINSTANCE.getVMSwitch();
+ /**
+ * The meta object literal for the '<em><b>Datadescription</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_SWITCH__DATADESCRIPTION = eINSTANCE.getVMSwitch_Datadescription();
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_SWITCH__VALUE = eINSTANCE.getVMSwitch_Value();
+ /**
+ * The meta object literal for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMVerticalComponentGroupImpl <em>VM Vertical Component Group</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMVerticalComponentGroupImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMVerticalComponentGroup()
+ * @generated
+ */
+ EClass VM_VERTICAL_COMPONENT_GROUP = eINSTANCE.getVMVerticalComponentGroup();
+ /**
+ * The meta object literal for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabSheetImpl <em>VM Tab Sheet</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabSheetImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMTabSheet()
+ * @generated
+ */
+ EClass VM_TAB_SHEET = eINSTANCE.getVMTabSheet();
+ /**
+ * The meta object literal for the '<em><b>Tabs</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_TAB_SHEET__TABS = eINSTANCE.getVMTabSheet_Tabs();
+ /**
+ * The meta object literal for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl <em>VM Tab</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMTab()
+ * @generated
+ */
+ EClass VM_TAB = eINSTANCE.getVMTab();
+ /**
+ * The meta object literal for the '<em><b>Parent</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_TAB__PARENT = eINSTANCE.getVMTab_Parent();
+ /**
+ * The meta object literal for the '<em><b>Embeddable</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_TAB__EMBEDDABLE = eINSTANCE.getVMTab_Embeddable();
+ /**
+ * The meta object literal for the '<em><b>Datadescription</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_TAB__DATADESCRIPTION = eINSTANCE.getVMTab_Datadescription();
+ /**
+ * The meta object literal for the '<em><b>Orphan Datadescriptions</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_TAB__ORPHAN_DATADESCRIPTIONS = eINSTANCE.getVMTab_OrphanDatadescriptions();
+ /**
+ * The meta object literal for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl <em>VM Navigation Page</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationPage()
+ * @generated
+ */
+ EClass VM_NAVIGATION_PAGE = eINSTANCE.getVMNavigationPage();
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_NAVIGATION_PAGE__TYPE = eINSTANCE.getVMNavigationPage_Type();
+ /**
+ * The meta object literal for the '<em><b>Emf Ns URI</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_NAVIGATION_PAGE__EMF_NS_URI = eINSTANCE.getVMNavigationPage_EmfNsURI();
+ /**
+ * The meta object literal for the '<em><b>Type Qualified Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_NAVIGATION_PAGE__TYPE_QUALIFIED_NAME = eINSTANCE.getVMNavigationPage_TypeQualifiedName();
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_NAVIGATION_PAGE__VALUE = eINSTANCE.getVMNavigationPage_Value();
+ /**
+ * The meta object literal for the '<em><b>Bar Actions</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_NAVIGATION_PAGE__BAR_ACTIONS = eINSTANCE.getVMNavigationPage_BarActions();
+ /**
+ * The meta object literal for the '<em><b>Navigate Back</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_NAVIGATION_PAGE__NAVIGATE_BACK = eINSTANCE.getVMNavigationPage_NavigateBack();
+ /**
+ * The meta object literal for the '<em><b>On Navigate Back</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_NAVIGATION_PAGE__ON_NAVIGATE_BACK = eINSTANCE.getVMNavigationPage_OnNavigateBack();
+ /**
+ * The meta object literal for the '<em><b>Datadescription</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_NAVIGATION_PAGE__DATADESCRIPTION = eINSTANCE.getVMNavigationPage_Datadescription();
+ /**
+ * The meta object literal for the '<em><b>Cell Styles</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_NAVIGATION_PAGE__CELL_STYLES = eINSTANCE.getVMNavigationPage_CellStyles();
+ /**
+ * The meta object literal for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageCellStyleImpl <em>VM Navigation Page Cell Style</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageCellStyleImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationPageCellStyle()
+ * @generated
+ */
+ EClass VM_NAVIGATION_PAGE_CELL_STYLE = eINSTANCE.getVMNavigationPageCellStyle();
+ /**
+ * The meta object literal for the '<em><b>Target</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_NAVIGATION_PAGE_CELL_STYLE__TARGET = eINSTANCE.getVMNavigationPageCellStyle_Target();
+ /**
+ * The meta object literal for the '<em><b>Alignment</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_NAVIGATION_PAGE_CELL_STYLE__ALIGNMENT = eINSTANCE.getVMNavigationPageCellStyle_Alignment();
+ /**
+ * The meta object literal for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationButtonImpl <em>VM Navigation Button</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationButtonImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationButton()
+ * @generated
+ */
+ EClass VM_NAVIGATION_BUTTON = eINSTANCE.getVMNavigationButton();
+ /**
+ * The meta object literal for the '<em><b>Page</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_NAVIGATION_BUTTON__PAGE = eINSTANCE.getVMNavigationButton_Page();
+ /**
+ * The meta object literal for the '<em><b>Datadescription</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_NAVIGATION_BUTTON__DATADESCRIPTION = eINSTANCE.getVMNavigationButton_Datadescription();
+ /**
+ * The meta object literal for the '<em><b>Last Click Time</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_NAVIGATION_BUTTON__LAST_CLICK_TIME = eINSTANCE.getVMNavigationButton_LastClickTime();
+ /**
+ * The meta object literal for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationCommandImpl <em>VM Navigation Command</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationCommandImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationCommand()
+ * @generated
+ */
+ EClass VM_NAVIGATION_COMMAND = eINSTANCE.getVMNavigationCommand();
+ /**
+ * The meta object literal for the '<em><b>Target Page</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_NAVIGATION_COMMAND__TARGET_PAGE = eINSTANCE.getVMNavigationCommand_TargetPage();
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_NAVIGATION_COMMAND__VALUE = eINSTANCE.getVMNavigationCommand_Value();
+ /**
+ * The meta object literal for the '<em><b>Navigation Handler</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_NAVIGATION_COMMAND__NAVIGATION_HANDLER = eINSTANCE.getVMNavigationCommand_NavigationHandler();
+ /**
+ * The meta object literal for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationHandler <em>VM Navigation Handler</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationHandler
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationHandler()
+ * @generated
+ */
+ EClass VM_NAVIGATION_HANDLER = eINSTANCE.getVMNavigationHandler();
+ /**
+ * The meta object literal for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSearchPanelImpl <em>VM Search Panel</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSearchPanelImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMSearchPanel()
+ * @generated
+ */
+ EClass VM_SEARCH_PANEL = eINSTANCE.getVMSearchPanel();
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_SEARCH_PANEL__TYPE = eINSTANCE.getVMSearchPanel_Type();
+ /**
+ * The meta object literal for the '<em><b>Emf Ns URI</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_SEARCH_PANEL__EMF_NS_URI = eINSTANCE.getVMSearchPanel_EmfNsURI();
+ /**
+ * The meta object literal for the '<em><b>Type Qualified Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_SEARCH_PANEL__TYPE_QUALIFIED_NAME = eINSTANCE.getVMSearchPanel_TypeQualifiedName();
+ /**
+ * The meta object literal for the '<em><b>Apply Filter</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_SEARCH_PANEL__APPLY_FILTER = eINSTANCE.getVMSearchPanel_ApplyFilter();
+ /**
+ * The meta object literal for the '<em><b>Filter</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_SEARCH_PANEL__FILTER = eINSTANCE.getVMSearchPanel_Filter();
+ /**
+ * The meta object literal for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationRootImpl <em>VM Navigation Root</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationRootImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationRoot()
+ * @generated
+ */
+ EClass VM_NAVIGATION_ROOT = eINSTANCE.getVMNavigationRoot();
+ /**
+ * The meta object literal for the '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationBarButtonImpl <em>VM Navigation Bar Button</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationBarButtonImpl
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VaadinMobilePackageImpl#getVMNavigationBarButton()
+ * @generated
+ */
+ EClass VM_NAVIGATION_BAR_BUTTON = eINSTANCE.getVMNavigationBarButton();
+ /**
+ * The meta object literal for the '<em><b>Datadescription</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VM_NAVIGATION_BAR_BUTTON__DATADESCRIPTION = eINSTANCE.getVMNavigationBarButton_Datadescription();
+ /**
+ * The meta object literal for the '<em><b>Last Click Time</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VM_NAVIGATION_BAR_BUTTON__LAST_CLICK_TIME = eINSTANCE.getVMNavigationBarButton_LastClickTime();
+
+ }
+
+} //VaadinMobilePackage
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMHorizontalButtonGroupImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMHorizontalButtonGroupImpl.java
new file mode 100644
index 0000000..7cc5d2b
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMHorizontalButtonGroupImpl.java
@@ -0,0 +1,52 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.osbp.ecview.core.common.model.core.impl.YLayoutImpl;
+
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMHorizontalButtonGroup;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VM Horizontal Button Group</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ *
+ *
+ * @generated
+ */
+public class VMHorizontalButtonGroupImpl extends YLayoutImpl implements VMHorizontalButtonGroup {
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ protected VMHorizontalButtonGroupImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the e class
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return VaadinMobilePackage.Literals.VM_HORIZONTAL_BUTTON_GROUP;
+ }
+
+} //VMHorizontalButtonGroupImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationBarButtonImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationBarButtonImpl.java
new file mode 100644
index 0000000..b7c56fc
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationBarButtonImpl.java
@@ -0,0 +1,494 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.osbp.ecview.core.common.model.core.CoreModelPackage;
+import org.eclipse.osbp.ecview.core.common.model.core.YEditable;
+import org.eclipse.osbp.ecview.core.common.model.core.impl.YActionImpl;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.DatatypesFactory;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.YDatadescription;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '
+ * <em><b>VM Navigation Bar Button</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationBarButtonImpl#isInitialEditable <em>Initial Editable</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationBarButtonImpl#isEditable <em>Editable</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationBarButtonImpl#getDatadescription <em>Datadescription</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationBarButtonImpl#getLastClickTime <em>Last Click Time</em>}</li>
+ * </ul>
+ *
+ *
+ * @generated
+ */
+public class VMNavigationBarButtonImpl extends YActionImpl implements
+ VMNavigationBarButton {
+ /**
+ * The default value of the '{@link #isInitialEditable() <em>Initial Editable</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #isInitialEditable()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean INITIAL_EDITABLE_EDEFAULT = true;
+ /**
+ * The cached value of the '{@link #isInitialEditable() <em>Initial Editable</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #isInitialEditable()
+ * @generated
+ * @ordered
+ */
+ protected boolean initialEditable = INITIAL_EDITABLE_EDEFAULT;
+ /**
+ * The default value of the '{@link #isEditable() <em>Editable</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #isEditable()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean EDITABLE_EDEFAULT = true;
+ /**
+ * The cached value of the '{@link #isEditable() <em>Editable</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #isEditable()
+ * @generated
+ * @ordered
+ */
+ protected boolean editable = EDITABLE_EDEFAULT;
+ /**
+ * The cached value of the '{@link #getDatadescription() <em>Datadescription</em>}' reference.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getDatadescription()
+ * @generated
+ * @ordered
+ */
+ protected YDatadescription datadescription;
+
+ /**
+ * The default value of the '{@link #getLastClickTime() <em>Last Click Time</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getLastClickTime()
+ * @generated
+ * @ordered
+ */
+ protected static final long LAST_CLICK_TIME_EDEFAULT = 0L;
+ /**
+ * The cached value of the '{@link #getLastClickTime() <em>Last Click Time</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getLastClickTime()
+ * @generated
+ * @ordered
+ */
+ protected long lastClickTime = LAST_CLICK_TIME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ protected VMNavigationBarButtonImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the e class
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return VaadinMobilePackage.Literals.VM_NAVIGATION_BAR_BUTTON;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #isInitialEditable()
+ * <em>Initial Editable</em>}' attribute
+ * @generated
+ */
+ public boolean isInitialEditable() {
+ return initialEditable;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newInitialEditable
+ * the new cached value of the '{@link #isInitialEditable()
+ * <em>Initial Editable</em>}' attribute
+ * @generated
+ */
+ public void setInitialEditable(boolean newInitialEditable) {
+ boolean oldInitialEditable = initialEditable;
+ initialEditable = newInitialEditable;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__INITIAL_EDITABLE, oldInitialEditable, initialEditable));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #isEditable() <em>Editable</em>}'
+ * attribute
+ * @generated
+ */
+ public boolean isEditable() {
+ return editable;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newEditable
+ * the new cached value of the '{@link #isEditable()
+ * <em>Editable</em>}' attribute
+ * @generated
+ */
+ public void setEditable(boolean newEditable) {
+ boolean oldEditable = editable;
+ editable = newEditable;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__EDITABLE, oldEditable, editable));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getDatadescription()
+ * <em>Datadescription</em>}' reference
+ * @generated
+ */
+ public YDatadescription getDatadescription() {
+ if (datadescription != null && datadescription.eIsProxy()) {
+ InternalEObject oldDatadescription = (InternalEObject)datadescription;
+ datadescription = (YDatadescription)eResolveProxy(oldDatadescription);
+ if (datadescription != oldDatadescription) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__DATADESCRIPTION, oldDatadescription, datadescription));
+ }
+ }
+ return datadescription;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the y datadescription
+ * @generated
+ */
+ public YDatadescription basicGetDatadescription() {
+ return datadescription;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newDatadescription
+ * the new cached value of the '{@link #getDatadescription()
+ * <em>Datadescription</em>}' reference
+ * @generated
+ */
+ public void setDatadescription(YDatadescription newDatadescription) {
+ YDatadescription oldDatadescription = datadescription;
+ datadescription = newDatadescription;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__DATADESCRIPTION, oldDatadescription, datadescription));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getLastClickTime()
+ * <em>Last Click Time</em>}' attribute
+ * @generated
+ */
+ public long getLastClickTime() {
+ return lastClickTime;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newLastClickTime
+ * the new cached value of the '{@link #getLastClickTime()
+ * <em>Last Click Time</em>}' attribute
+ * @generated
+ */
+ public void setLastClickTime(long newLastClickTime) {
+ long oldLastClickTime = lastClickTime;
+ lastClickTime = newLastClickTime;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__LAST_CLICK_TIME, oldLastClickTime, lastClickTime));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param resolve
+ * the resolve
+ * @param coreType
+ * the core type
+ * @return the object
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__INITIAL_EDITABLE:
+ return isInitialEditable();
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__EDITABLE:
+ return isEditable();
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__DATADESCRIPTION:
+ if (resolve) return getDatadescription();
+ return basicGetDatadescription();
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__LAST_CLICK_TIME:
+ return getLastClickTime();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param newValue
+ * the new value
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__INITIAL_EDITABLE:
+ setInitialEditable((Boolean)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__EDITABLE:
+ setEditable((Boolean)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__DATADESCRIPTION:
+ setDatadescription((YDatadescription)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__LAST_CLICK_TIME:
+ setLastClickTime((Long)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__INITIAL_EDITABLE:
+ setInitialEditable(INITIAL_EDITABLE_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__EDITABLE:
+ setEditable(EDITABLE_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__DATADESCRIPTION:
+ setDatadescription((YDatadescription)null);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__LAST_CLICK_TIME:
+ setLastClickTime(LAST_CLICK_TIME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @return true, if successful
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__INITIAL_EDITABLE:
+ return initialEditable != INITIAL_EDITABLE_EDEFAULT;
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__EDITABLE:
+ return editable != EDITABLE_EDEFAULT;
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__DATADESCRIPTION:
+ return datadescription != null;
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__LAST_CLICK_TIME:
+ return lastClickTime != LAST_CLICK_TIME_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param derivedFeatureID
+ * the derived feature id
+ * @param baseClass
+ * the base class
+ * @return the int
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == YEditable.class) {
+ switch (derivedFeatureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__INITIAL_EDITABLE: return CoreModelPackage.YEDITABLE__INITIAL_EDITABLE;
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__EDITABLE: return CoreModelPackage.YEDITABLE__EDITABLE;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param baseFeatureID
+ * the base feature id
+ * @param baseClass
+ * the base class
+ * @return the int
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == YEditable.class) {
+ switch (baseFeatureID) {
+ case CoreModelPackage.YEDITABLE__INITIAL_EDITABLE: return VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__INITIAL_EDITABLE;
+ case CoreModelPackage.YEDITABLE__EDITABLE: return VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON__EDITABLE;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the string
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (initialEditable: ");
+ result.append(initialEditable);
+ result.append(", editable: ");
+ result.append(editable);
+ result.append(", lastClickTime: ");
+ result.append(lastClickTime);
+ result.append(')');
+ return result.toString();
+ }
+
+ /**
+ * Sets the label by creating a new datadescription.
+ *
+ * @param label
+ * the new label
+ */
+ public void setLabel(String label) {
+ YDatadescription ds = getDatadescription();
+ if (ds == null) {
+ setDatadescription(createDatadescription(label));
+ getOrphanDatadescriptions().add(getDatadescription());
+ } else {
+ ds.setLabel(label);
+ }
+ }
+
+ /**
+ * Sets the label i18nKey by creating a new datadescription.
+ *
+ * @param i18nKey
+ * the new label i18n key
+ */
+ public void setLabelI18nKey(String i18nKey) {
+ YDatadescription ds = getDatadescription();
+ if (ds == null) {
+ setDatadescription(createDatadescriptionForI18n(i18nKey));
+ getOrphanDatadescriptions().add(getDatadescription());
+ } else {
+ ds.setLabelI18nKey(i18nKey);
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.model.core.impl.YActionImpl#getLabel()
+ */
+ @Override
+ public String getLabel() {
+ YDatadescription ds = getDatadescription();
+ if (ds != null) {
+ return ds.getLabel();
+ }
+ return "";
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.model.core.impl.YActionImpl#getLabelI18nKey()
+ */
+ @Override
+ public String getLabelI18nKey() {
+ YDatadescription ds = getDatadescription();
+ if (ds != null) {
+ return ds.getLabelI18nKey();
+ }
+ return "";
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.model.core.impl.YEmbeddableImpl#createDatadescription(java.lang.String)
+ */
+ protected YDatadescription createDatadescription(String label) {
+ YDatadescription dsc = DatatypesFactory.eINSTANCE
+ .createYDatadescription();
+ dsc.setLabel(label);
+ return dsc;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.model.core.impl.YEmbeddableImpl#createDatadescriptionForI18n(java.lang.String)
+ */
+ protected YDatadescription createDatadescriptionForI18n(String i18nKey) {
+ YDatadescription dsc = DatatypesFactory.eINSTANCE
+ .createYDatadescription();
+ dsc.setLabelI18nKey(i18nKey);
+ return dsc;
+ }
+
+} // VMNavigationBarButtonImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationButtonImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationButtonImpl.java
new file mode 100644
index 0000000..ec07377
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationButtonImpl.java
@@ -0,0 +1,434 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.osbp.ecview.core.common.model.core.impl.YActionImpl;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.DatatypesFactory;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.YDatadescription;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VM Navigation Button</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationButtonImpl#getPage <em>Page</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationButtonImpl#getDatadescription <em>Datadescription</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationButtonImpl#getLastClickTime <em>Last Click Time</em>}</li>
+ * </ul>
+ *
+ *
+ * @generated
+ */
+public class VMNavigationButtonImpl extends YActionImpl implements VMNavigationButton {
+ /**
+ * The cached value of the '{@link #getPage() <em>Page</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPage()
+ * @generated
+ * @ordered
+ */
+ protected VMNavigationPage page;
+
+ /**
+ * The cached value of the '{@link #getDatadescription() <em>Datadescription</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDatadescription()
+ * @generated
+ * @ordered
+ */
+ protected YDatadescription datadescription;
+
+ /**
+ * The default value of the '{@link #getLastClickTime() <em>Last Click Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLastClickTime()
+ * @generated
+ * @ordered
+ */
+ protected static final long LAST_CLICK_TIME_EDEFAULT = 0L;
+
+ /**
+ * The cached value of the '{@link #getLastClickTime() <em>Last Click Time</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLastClickTime()
+ * @generated
+ * @ordered
+ */
+ protected long lastClickTime = LAST_CLICK_TIME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ protected VMNavigationButtonImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the e class
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return VaadinMobilePackage.Literals.VM_NAVIGATION_BUTTON;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getPage() <em>Page</em>}'
+ * containment reference
+ * @generated
+ */
+ public VMNavigationPage getPage() {
+ return page;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newPage
+ * the new page
+ * @param msgs
+ * the msgs
+ * @return the notification chain
+ * @generated
+ */
+ public NotificationChain basicSetPage(VMNavigationPage newPage, NotificationChain msgs) {
+ VMNavigationPage oldPage = page;
+ page = newPage;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_BUTTON__PAGE, oldPage, newPage);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newPage
+ * the new cached value of the '{@link #getPage() <em>Page</em>}'
+ * containment reference
+ * @generated
+ */
+ public void setPage(VMNavigationPage newPage) {
+ if (newPage != page) {
+ NotificationChain msgs = null;
+ if (page != null)
+ msgs = ((InternalEObject)page).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - VaadinMobilePackage.VM_NAVIGATION_BUTTON__PAGE, null, msgs);
+ if (newPage != null)
+ msgs = ((InternalEObject)newPage).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - VaadinMobilePackage.VM_NAVIGATION_BUTTON__PAGE, null, msgs);
+ msgs = basicSetPage(newPage, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_BUTTON__PAGE, newPage, newPage));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getDatadescription()
+ * <em>Datadescription</em>}' reference
+ * @generated
+ */
+ public YDatadescription getDatadescription() {
+ if (datadescription != null && datadescription.eIsProxy()) {
+ InternalEObject oldDatadescription = (InternalEObject)datadescription;
+ datadescription = (YDatadescription)eResolveProxy(oldDatadescription);
+ if (datadescription != oldDatadescription) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, VaadinMobilePackage.VM_NAVIGATION_BUTTON__DATADESCRIPTION, oldDatadescription, datadescription));
+ }
+ }
+ return datadescription;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the y datadescription
+ * @generated
+ */
+ public YDatadescription basicGetDatadescription() {
+ return datadescription;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newDatadescription
+ * the new cached value of the '{@link #getDatadescription()
+ * <em>Datadescription</em>}' reference
+ * @generated
+ */
+ public void setDatadescription(YDatadescription newDatadescription) {
+ YDatadescription oldDatadescription = datadescription;
+ datadescription = newDatadescription;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_BUTTON__DATADESCRIPTION, oldDatadescription, datadescription));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getLastClickTime()
+ * <em>Last Click Time</em>}' attribute
+ * @generated
+ */
+ public long getLastClickTime() {
+ return lastClickTime;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newLastClickTime
+ * the new cached value of the '{@link #getLastClickTime()
+ * <em>Last Click Time</em>}' attribute
+ * @generated
+ */
+ public void setLastClickTime(long newLastClickTime) {
+ long oldLastClickTime = lastClickTime;
+ lastClickTime = newLastClickTime;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_BUTTON__LAST_CLICK_TIME, oldLastClickTime, lastClickTime));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param otherEnd
+ * the other end
+ * @param featureID
+ * the feature id
+ * @param msgs
+ * the msgs
+ * @return the notification chain
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__PAGE:
+ return basicSetPage(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param resolve
+ * the resolve
+ * @param coreType
+ * the core type
+ * @return the object
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__PAGE:
+ return getPage();
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__DATADESCRIPTION:
+ if (resolve) return getDatadescription();
+ return basicGetDatadescription();
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__LAST_CLICK_TIME:
+ return getLastClickTime();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param newValue
+ * the new value
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__PAGE:
+ setPage((VMNavigationPage)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__DATADESCRIPTION:
+ setDatadescription((YDatadescription)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__LAST_CLICK_TIME:
+ setLastClickTime((Long)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__PAGE:
+ setPage((VMNavigationPage)null);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__DATADESCRIPTION:
+ setDatadescription((YDatadescription)null);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__LAST_CLICK_TIME:
+ setLastClickTime(LAST_CLICK_TIME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @return true, if successful
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__PAGE:
+ return page != null;
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__DATADESCRIPTION:
+ return datadescription != null;
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON__LAST_CLICK_TIME:
+ return lastClickTime != LAST_CLICK_TIME_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the string
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (lastClickTime: ");
+ result.append(lastClickTime);
+ result.append(')');
+ return result.toString();
+ }
+
+ /**
+ * Sets the label by creating a new datadescription.
+ *
+ * @param label
+ * the new label
+ */
+ public void setLabel(String label) {
+ YDatadescription ds = getDatadescription();
+ if (ds == null) {
+ setDatadescription(createDatadescription(label));
+ getOrphanDatadescriptions().add(getDatadescription());
+ } else {
+ ds.setLabel(label);
+ }
+ }
+
+ /**
+ * Sets the label i18nKey by creating a new datadescription.
+ *
+ * @param i18nKey
+ * the new label i18n key
+ */
+ public void setLabelI18nKey(String i18nKey) {
+ YDatadescription ds = getDatadescription();
+ if (ds == null) {
+ setDatadescription(createDatadescriptionForI18n(i18nKey));
+ getOrphanDatadescriptions().add(getDatadescription());
+ } else {
+ ds.setLabelI18nKey(i18nKey);
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.model.core.impl.YActionImpl#getLabel()
+ */
+ @Override
+ public String getLabel() {
+ YDatadescription ds = getDatadescription();
+ if (ds != null) {
+ return ds.getLabel();
+ }
+ return "";
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.model.core.impl.YActionImpl#getLabelI18nKey()
+ */
+ @Override
+ public String getLabelI18nKey() {
+ YDatadescription ds = getDatadescription();
+ if (ds != null) {
+ return ds.getLabelI18nKey();
+ }
+ return "";
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.model.core.impl.YEmbeddableImpl#createDatadescription(java.lang.String)
+ */
+ protected YDatadescription createDatadescription(String label) {
+ YDatadescription dsc = DatatypesFactory.eINSTANCE
+ .createYDatadescription();
+ dsc.setLabel(label);
+ return dsc;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.model.core.impl.YEmbeddableImpl#createDatadescriptionForI18n(java.lang.String)
+ */
+ protected YDatadescription createDatadescriptionForI18n(String i18nKey) {
+ YDatadescription dsc = DatatypesFactory.eINSTANCE
+ .createYDatadescription();
+ dsc.setLabelI18nKey(i18nKey);
+ return dsc;
+ }
+
+} //VMNavigationButtonImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationCommandImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationCommandImpl.java
new file mode 100644
index 0000000..d62e689
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationCommandImpl.java
@@ -0,0 +1,628 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+
+import java.util.Collection;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.EMap;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.emf.ecore.util.EcoreEMap;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.osbp.ecview.core.common.model.binding.BindingFactory;
+import org.eclipse.osbp.ecview.core.common.model.binding.YECViewModelValueBindingEndpoint;
+import org.eclipse.osbp.ecview.core.common.model.core.CoreModelPackage;
+import org.eclipse.osbp.ecview.core.common.model.core.YLayout;
+import org.eclipse.osbp.ecview.core.common.model.core.YView;
+import org.eclipse.osbp.ecview.core.common.model.core.impl.YStringToStringMapImpl;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationHandler;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '
+ * <em><b>VM Navigation Command</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationCommandImpl#getId <em>Id</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationCommandImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationCommandImpl#getTags <em>Tags</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationCommandImpl#getProperties <em>Properties</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationCommandImpl#getNavigationHandler <em>Navigation Handler</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationCommandImpl#getTargetPage <em>Target Page</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationCommandImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ *
+ * @generated
+ */
+public class VMNavigationCommandImpl extends MinimalEObjectImpl.Container
+ implements VMNavigationCommand {
+ /**
+ * The default value of the '{@link #getId() <em>Id</em>}' attribute. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #getId()
+ * @generated
+ * @ordered
+ */
+ protected static final String ID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getId() <em>Id</em>}' attribute. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #getId()
+ * @generated
+ * @ordered
+ */
+ protected String id = ID_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getTags() <em>Tags</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTags()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> tags;
+
+ /**
+ * The cached value of the '{@link #getProperties() <em>Properties</em>}' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getProperties()
+ * @generated
+ * @ordered
+ */
+ protected EMap<String, String> properties;
+
+ /**
+ * The cached value of the '{@link #getNavigationHandler() <em>Navigation Handler</em>}' reference.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * @see #getNavigationHandler()
+ * @generated
+ * @ordered
+ */
+ protected VMNavigationHandler navigationHandler;
+
+ /**
+ * The cached value of the '{@link #getTargetPage() <em>Target Page</em>}' containment reference.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getTargetPage()
+ * @generated
+ * @ordered
+ */
+ protected VMNavigationPage targetPage;
+
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final Object VALUE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected Object value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ protected VMNavigationCommandImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the e class
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return VaadinMobilePackage.Literals.VM_NAVIGATION_COMMAND;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getId() <em>Id</em>}' attribute
+ * @generated
+ */
+ public String getId() {
+ return id;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newId
+ * the new cached value of the '{@link #getId() <em>Id</em>}'
+ * attribute
+ * @generated
+ */
+ public void setId(String newId) {
+ String oldId = id;
+ id = newId;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_COMMAND__ID, oldId, id));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getName() <em>Name</em>}'
+ * attribute
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newName
+ * the new cached value of the '{@link #getName() <em>Name</em>}'
+ * attribute
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_COMMAND__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getTags() <em>Tags</em>}'
+ * attribute list
+ * @generated
+ */
+ public EList<String> getTags() {
+ if (tags == null) {
+ tags = new EDataTypeUniqueEList<String>(String.class, this, VaadinMobilePackage.VM_NAVIGATION_COMMAND__TAGS);
+ }
+ return tags;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getProperties()
+ * <em>Properties</em>}' map
+ * @generated
+ */
+ public EMap<String, String> getProperties() {
+ if (properties == null) {
+ properties = new EcoreEMap<String,String>(CoreModelPackage.Literals.YSTRING_TO_STRING_MAP, YStringToStringMapImpl.class, this, VaadinMobilePackage.VM_NAVIGATION_COMMAND__PROPERTIES);
+ }
+ return properties;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getTargetPage()
+ * <em>Target Page</em>}' containment reference
+ * @generated
+ */
+ public VMNavigationPage getTargetPage() {
+ return targetPage;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newTargetPage
+ * the new target page
+ * @param msgs
+ * the msgs
+ * @return the notification chain
+ * @generated
+ */
+ public NotificationChain basicSetTargetPage(VMNavigationPage newTargetPage,
+ NotificationChain msgs) {
+ VMNavigationPage oldTargetPage = targetPage;
+ targetPage = newTargetPage;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_COMMAND__TARGET_PAGE, oldTargetPage, newTargetPage);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newTargetPage
+ * the new cached value of the '{@link #getTargetPage()
+ * <em>Target Page</em>}' containment reference
+ * @generated
+ */
+ public void setTargetPage(VMNavigationPage newTargetPage) {
+ if (newTargetPage != targetPage) {
+ NotificationChain msgs = null;
+ if (targetPage != null)
+ msgs = ((InternalEObject)targetPage).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - VaadinMobilePackage.VM_NAVIGATION_COMMAND__TARGET_PAGE, null, msgs);
+ if (newTargetPage != null)
+ msgs = ((InternalEObject)newTargetPage).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - VaadinMobilePackage.VM_NAVIGATION_COMMAND__TARGET_PAGE, null, msgs);
+ msgs = basicSetTargetPage(newTargetPage, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_COMMAND__TARGET_PAGE, newTargetPage, newTargetPage));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getValue() <em>Value</em>}'
+ * attribute
+ * @generated
+ */
+ public Object getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newValue
+ * the new cached value of the '{@link #getValue()
+ * <em>Value</em>}' attribute
+ * @generated
+ */
+ public void setValue(Object newValue) {
+ Object oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_COMMAND__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getNavigationHandler()
+ * <em>Navigation Handler</em>}' reference
+ * @generated
+ */
+ public VMNavigationHandler getNavigationHandler() {
+ if (navigationHandler != null && navigationHandler.eIsProxy()) {
+ InternalEObject oldNavigationHandler = (InternalEObject)navigationHandler;
+ navigationHandler = (VMNavigationHandler)eResolveProxy(oldNavigationHandler);
+ if (navigationHandler != oldNavigationHandler) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, VaadinMobilePackage.VM_NAVIGATION_COMMAND__NAVIGATION_HANDLER, oldNavigationHandler, navigationHandler));
+ }
+ }
+ return navigationHandler;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation handler
+ * @generated
+ */
+ public VMNavigationHandler basicGetNavigationHandler() {
+ return navigationHandler;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newNavigationHandler
+ * the new cached value of the '{@link #getNavigationHandler()
+ * <em>Navigation Handler</em>}' reference
+ * @generated
+ */
+ public void setNavigationHandler(VMNavigationHandler newNavigationHandler) {
+ VMNavigationHandler oldNavigationHandler = navigationHandler;
+ navigationHandler = newNavigationHandler;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_COMMAND__NAVIGATION_HANDLER, oldNavigationHandler, navigationHandler));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the YEC view model value binding endpoint
+ * @generated
+ */
+ public YECViewModelValueBindingEndpoint createNavigationValueEndpointGen() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand#createNavigationValueEndpoint()
+ */
+ public YECViewModelValueBindingEndpoint createNavigationValueEndpoint() {
+ YECViewModelValueBindingEndpoint endpoint = BindingFactory.eINSTANCE
+ .createYECViewModelValueBindingEndpoint();
+ endpoint.setElement(this);
+ endpoint.getFeatures()
+ .add((EStructuralFeature) VaadinMobilePackage.Literals.VM_NAVIGATION_COMMAND__VALUE);
+ return endpoint;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the view gen
+ * @generated
+ */
+ public YView getViewGen() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.model.core.YCommand#getView()
+ */
+ public YView getView() {
+ return findViewGeneric(eContainer());
+ }
+
+ /**
+ * Find view generic.
+ *
+ * @param container
+ * the container
+ * @return the y view
+ */
+ protected YView findViewGeneric(EObject container) {
+ if (container == null) {
+ return null;
+ }
+ if (container instanceof YView) {
+ return (YView) container;
+ } else if (container instanceof YLayout) {
+ return ((YLayout) container).getView();
+ } else {
+ EObject parent = container.eContainer();
+ return findViewGeneric(parent);
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param otherEnd
+ * the other end
+ * @param featureID
+ * the feature id
+ * @param msgs
+ * the msgs
+ * @return the notification chain
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd,
+ int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__PROPERTIES:
+ return ((InternalEList<?>)getProperties()).basicRemove(otherEnd, msgs);
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__TARGET_PAGE:
+ return basicSetTargetPage(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param resolve
+ * the resolve
+ * @param coreType
+ * the core type
+ * @return the object
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__ID:
+ return getId();
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__NAME:
+ return getName();
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__TAGS:
+ return getTags();
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__PROPERTIES:
+ if (coreType) return getProperties();
+ else return getProperties().map();
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__NAVIGATION_HANDLER:
+ if (resolve) return getNavigationHandler();
+ return basicGetNavigationHandler();
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__TARGET_PAGE:
+ return getTargetPage();
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param newValue
+ * the new value
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__ID:
+ setId((String)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__NAME:
+ setName((String)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__TAGS:
+ getTags().clear();
+ getTags().addAll((Collection<? extends String>)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__PROPERTIES:
+ ((EStructuralFeature.Setting)getProperties()).set(newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__NAVIGATION_HANDLER:
+ setNavigationHandler((VMNavigationHandler)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__TARGET_PAGE:
+ setTargetPage((VMNavigationPage)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__VALUE:
+ setValue(newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__ID:
+ setId(ID_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__TAGS:
+ getTags().clear();
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__PROPERTIES:
+ getProperties().clear();
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__NAVIGATION_HANDLER:
+ setNavigationHandler((VMNavigationHandler)null);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__TARGET_PAGE:
+ setTargetPage((VMNavigationPage)null);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @return true, if successful
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__ID:
+ return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__TAGS:
+ return tags != null && !tags.isEmpty();
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__PROPERTIES:
+ return properties != null && !properties.isEmpty();
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__NAVIGATION_HANDLER:
+ return navigationHandler != null;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__TARGET_PAGE:
+ return targetPage != null;
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND__VALUE:
+ return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the string
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (id: ");
+ result.append(id);
+ result.append(", name: ");
+ result.append(name);
+ result.append(", tags: ");
+ result.append(tags);
+ result.append(", value: ");
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} // VMNavigationCommandImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationPageCellStyleImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationPageCellStyleImpl.java
new file mode 100644
index 0000000..612c6ce
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationPageCellStyleImpl.java
@@ -0,0 +1,265 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.osbp.ecview.core.common.model.core.YAlignment;
+import org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable;
+
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VM Navigation Page Cell Style</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageCellStyleImpl#getTarget <em>Target</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageCellStyleImpl#getAlignment <em>Alignment</em>}</li>
+ * </ul>
+ *
+ *
+ * @generated
+ */
+public class VMNavigationPageCellStyleImpl extends MinimalEObjectImpl.Container implements VMNavigationPageCellStyle {
+ /**
+ * The cached value of the '{@link #getTarget() <em>Target</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTarget()
+ * @generated
+ * @ordered
+ */
+ protected YEmbeddable target;
+
+ /**
+ * The default value of the '{@link #getAlignment() <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAlignment()
+ * @generated
+ * @ordered
+ */
+ protected static final YAlignment ALIGNMENT_EDEFAULT = YAlignment.UNDEFINED;
+
+ /**
+ * The cached value of the '{@link #getAlignment() <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAlignment()
+ * @generated
+ * @ordered
+ */
+ protected YAlignment alignment = ALIGNMENT_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ protected VMNavigationPageCellStyleImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the e class
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return VaadinMobilePackage.Literals.VM_NAVIGATION_PAGE_CELL_STYLE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getTarget() <em>Target</em>}'
+ * reference
+ * @generated
+ */
+ public YEmbeddable getTarget() {
+ if (target != null && target.eIsProxy()) {
+ InternalEObject oldTarget = (InternalEObject)target;
+ target = (YEmbeddable)eResolveProxy(oldTarget);
+ if (target != oldTarget) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE__TARGET, oldTarget, target));
+ }
+ }
+ return target;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the y embeddable
+ * @generated
+ */
+ public YEmbeddable basicGetTarget() {
+ return target;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newTarget
+ * the new cached value of the '{@link #getTarget()
+ * <em>Target</em>}' reference
+ * @generated
+ */
+ public void setTarget(YEmbeddable newTarget) {
+ YEmbeddable oldTarget = target;
+ target = newTarget;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE__TARGET, oldTarget, target));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getAlignment()
+ * <em>Alignment</em>}' attribute
+ * @generated
+ */
+ public YAlignment getAlignment() {
+ return alignment;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newAlignment
+ * the new cached value of the '{@link #getAlignment()
+ * <em>Alignment</em>}' attribute
+ * @generated
+ */
+ public void setAlignment(YAlignment newAlignment) {
+ YAlignment oldAlignment = alignment;
+ alignment = newAlignment == null ? ALIGNMENT_EDEFAULT : newAlignment;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE__ALIGNMENT, oldAlignment, alignment));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param resolve
+ * the resolve
+ * @param coreType
+ * the core type
+ * @return the object
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE__TARGET:
+ if (resolve) return getTarget();
+ return basicGetTarget();
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE__ALIGNMENT:
+ return getAlignment();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param newValue
+ * the new value
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE__TARGET:
+ setTarget((YEmbeddable)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE__ALIGNMENT:
+ setAlignment((YAlignment)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE__TARGET:
+ setTarget((YEmbeddable)null);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE__ALIGNMENT:
+ setAlignment(ALIGNMENT_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @return true, if successful
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE__TARGET:
+ return target != null;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE__ALIGNMENT:
+ return alignment != ALIGNMENT_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the string
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (alignment: ");
+ result.append(alignment);
+ result.append(')');
+ return result.toString();
+ }
+
+} //VMNavigationPageCellStyleImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationPageImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationPageImpl.java
new file mode 100644
index 0000000..146b9b6
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationPageImpl.java
@@ -0,0 +1,705 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+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.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.osbp.ecview.core.common.model.binding.YECViewModelValueBindingEndpoint;
+import org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable;
+import org.eclipse.osbp.ecview.core.common.model.core.impl.YLayoutImpl;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.YDatadescription;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobileFactory;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '
+ * <em><b>VM Navigation Page</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl#getEmfNsURI <em>Emf Ns URI</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl#getTypeQualifiedName <em>Type Qualified Name</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl#getValue <em>Value</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl#getBarActions <em>Bar Actions</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl#getNavigateBack <em>Navigate Back</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl#getOnNavigateBack <em>On Navigate Back</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl#getDatadescription <em>Datadescription</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMNavigationPageImpl#getCellStyles <em>Cell Styles</em>}</li>
+ * </ul>
+ *
+ *
+ * @generated
+ */
+public class VMNavigationPageImpl extends YLayoutImpl implements
+ VMNavigationPage {
+ /**
+ * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected Class<?> type;
+ /**
+ * The default value of the '{@link #getEmfNsURI() <em>Emf Ns URI</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getEmfNsURI()
+ * @generated
+ * @ordered
+ */
+ protected static final String EMF_NS_URI_EDEFAULT = null;
+ /**
+ * The cached value of the '{@link #getEmfNsURI() <em>Emf Ns URI</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getEmfNsURI()
+ * @generated
+ * @ordered
+ */
+ protected String emfNsURI = EMF_NS_URI_EDEFAULT;
+ /**
+ * The default value of the '{@link #getTypeQualifiedName() <em>Type Qualified Name</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getTypeQualifiedName()
+ * @generated
+ * @ordered
+ */
+ protected static final String TYPE_QUALIFIED_NAME_EDEFAULT = null;
+ /**
+ * The cached value of the '{@link #getTypeQualifiedName() <em>Type Qualified Name</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getTypeQualifiedName()
+ * @generated
+ * @ordered
+ */
+ protected String typeQualifiedName = TYPE_QUALIFIED_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final Object VALUE_EDEFAULT = null;
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected Object value = VALUE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getBarActions() <em>Bar Actions</em>}' containment reference list.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getBarActions()
+ * @generated
+ * @ordered
+ */
+ protected EList<VMNavigationBarButton> barActions;
+
+ /**
+ * The default value of the '{@link #getNavigateBack() <em>Navigate Back</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getNavigateBack()
+ * @generated
+ * @ordered
+ */
+ protected static final Object NAVIGATE_BACK_EDEFAULT = null;
+ /**
+ * The cached value of the '{@link #getNavigateBack() <em>Navigate Back</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getNavigateBack()
+ * @generated
+ * @ordered
+ */
+ protected Object navigateBack = NAVIGATE_BACK_EDEFAULT;
+ /**
+ * The default value of the '{@link #getOnNavigateBack() <em>On Navigate Back</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getOnNavigateBack()
+ * @generated
+ * @ordered
+ */
+ protected static final long ON_NAVIGATE_BACK_EDEFAULT = 0L;
+ /**
+ * The cached value of the '{@link #getOnNavigateBack() <em>On Navigate Back</em>}' attribute.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getOnNavigateBack()
+ * @generated
+ * @ordered
+ */
+ protected long onNavigateBack = ON_NAVIGATE_BACK_EDEFAULT;
+ /**
+ * The cached value of the '{@link #getDatadescription() <em>Datadescription</em>}' reference.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getDatadescription()
+ * @generated
+ * @ordered
+ */
+ protected YDatadescription datadescription;
+
+ /**
+ * The cached value of the '{@link #getCellStyles() <em>Cell Styles</em>}' containment reference list.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getCellStyles()
+ * @generated
+ * @ordered
+ */
+ protected EList<VMNavigationPageCellStyle> cellStyles;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ protected VMNavigationPageImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the e class
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return VaadinMobilePackage.Literals.VM_NAVIGATION_PAGE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getType() <em>Type</em>}'
+ * attribute
+ * @generated
+ */
+ public Class<?> getType() {
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newType
+ * the new cached value of the '{@link #getType() <em>Type</em>}'
+ * attribute
+ * @generated
+ */
+ public void setType(Class<?> newType) {
+ Class<?> oldType = type;
+ type = newType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_PAGE__TYPE, oldType, type));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getEmfNsURI()
+ * <em>Emf Ns URI</em>}' attribute
+ * @generated
+ */
+ public String getEmfNsURI() {
+ return emfNsURI;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newEmfNsURI
+ * the new cached value of the '{@link #getEmfNsURI()
+ * <em>Emf Ns URI</em>}' attribute
+ * @generated
+ */
+ public void setEmfNsURI(String newEmfNsURI) {
+ String oldEmfNsURI = emfNsURI;
+ emfNsURI = newEmfNsURI;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_PAGE__EMF_NS_URI, oldEmfNsURI, emfNsURI));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getTypeQualifiedName()
+ * <em>Type Qualified Name</em>}' attribute
+ * @generated
+ */
+ public String getTypeQualifiedName() {
+ return typeQualifiedName;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newTypeQualifiedName
+ * the new cached value of the '{@link #getTypeQualifiedName()
+ * <em>Type Qualified Name</em>}' attribute
+ * @generated
+ */
+ public void setTypeQualifiedName(String newTypeQualifiedName) {
+ String oldTypeQualifiedName = typeQualifiedName;
+ typeQualifiedName = newTypeQualifiedName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_PAGE__TYPE_QUALIFIED_NAME, oldTypeQualifiedName, typeQualifiedName));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getValue() <em>Value</em>}'
+ * attribute
+ * @generated
+ */
+ public Object getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newValue
+ * the new cached value of the '{@link #getValue()
+ * <em>Value</em>}' attribute
+ * @generated
+ */
+ public void setValue(Object newValue) {
+ Object oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_PAGE__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getBarActions()
+ * <em>Bar Actions</em>}' containment reference list
+ * @generated
+ */
+ public EList<VMNavigationBarButton> getBarActions() {
+ if (barActions == null) {
+ barActions = new EObjectContainmentEList<VMNavigationBarButton>(VMNavigationBarButton.class, this, VaadinMobilePackage.VM_NAVIGATION_PAGE__BAR_ACTIONS);
+ }
+ return barActions;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getNavigateBack()
+ * <em>Navigate Back</em>}' attribute
+ * @generated
+ */
+ public Object getNavigateBack() {
+ return navigateBack;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newNavigateBack
+ * the new cached value of the '{@link #getNavigateBack()
+ * <em>Navigate Back</em>}' attribute
+ * @generated
+ */
+ public void setNavigateBack(Object newNavigateBack) {
+ Object oldNavigateBack = navigateBack;
+ navigateBack = newNavigateBack;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_PAGE__NAVIGATE_BACK, oldNavigateBack, navigateBack));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getOnNavigateBack()
+ * <em>On Navigate Back</em>}' attribute
+ * @generated
+ */
+ public long getOnNavigateBack() {
+ return onNavigateBack;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newOnNavigateBack
+ * the new cached value of the '{@link #getOnNavigateBack()
+ * <em>On Navigate Back</em>}' attribute
+ * @generated
+ */
+ public void setOnNavigateBack(long newOnNavigateBack) {
+ long oldOnNavigateBack = onNavigateBack;
+ onNavigateBack = newOnNavigateBack;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_PAGE__ON_NAVIGATE_BACK, oldOnNavigateBack, onNavigateBack));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getDatadescription()
+ * <em>Datadescription</em>}' reference
+ * @generated
+ */
+ public YDatadescription getDatadescription() {
+ if (datadescription != null && datadescription.eIsProxy()) {
+ InternalEObject oldDatadescription = (InternalEObject)datadescription;
+ datadescription = (YDatadescription)eResolveProxy(oldDatadescription);
+ if (datadescription != oldDatadescription) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, VaadinMobilePackage.VM_NAVIGATION_PAGE__DATADESCRIPTION, oldDatadescription, datadescription));
+ }
+ }
+ return datadescription;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the y datadescription
+ * @generated
+ */
+ public YDatadescription basicGetDatadescription() {
+ return datadescription;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newDatadescription
+ * the new cached value of the '{@link #getDatadescription()
+ * <em>Datadescription</em>}' reference
+ * @generated
+ */
+ public void setDatadescription(YDatadescription newDatadescription) {
+ YDatadescription oldDatadescription = datadescription;
+ datadescription = newDatadescription;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_NAVIGATION_PAGE__DATADESCRIPTION, oldDatadescription, datadescription));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getCellStyles()
+ * <em>Cell Styles</em>}' containment reference list
+ * @generated
+ */
+ public EList<VMNavigationPageCellStyle> getCellStyles() {
+ if (cellStyles == null) {
+ cellStyles = new EObjectContainmentEList<VMNavigationPageCellStyle>(VMNavigationPageCellStyle.class, this, VaadinMobilePackage.VM_NAVIGATION_PAGE__CELL_STYLES);
+ }
+ return cellStyles;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the YEC view model value binding endpoint
+ * @generated
+ */
+ public YECViewModelValueBindingEndpoint createValueEndpoint() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param otherEnd
+ * the other end
+ * @param featureID
+ * the feature id
+ * @param msgs
+ * the msgs
+ * @return the notification chain
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd,
+ int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__BAR_ACTIONS:
+ return ((InternalEList<?>)getBarActions()).basicRemove(otherEnd, msgs);
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__CELL_STYLES:
+ return ((InternalEList<?>)getCellStyles()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param resolve
+ * the resolve
+ * @param coreType
+ * the core type
+ * @return the object
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__TYPE:
+ return getType();
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__EMF_NS_URI:
+ return getEmfNsURI();
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__TYPE_QUALIFIED_NAME:
+ return getTypeQualifiedName();
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__VALUE:
+ return getValue();
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__BAR_ACTIONS:
+ return getBarActions();
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__NAVIGATE_BACK:
+ return getNavigateBack();
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__ON_NAVIGATE_BACK:
+ return getOnNavigateBack();
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__DATADESCRIPTION:
+ if (resolve) return getDatadescription();
+ return basicGetDatadescription();
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__CELL_STYLES:
+ return getCellStyles();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param newValue
+ * the new value
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__TYPE:
+ setType((Class<?>)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__EMF_NS_URI:
+ setEmfNsURI((String)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__TYPE_QUALIFIED_NAME:
+ setTypeQualifiedName((String)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__VALUE:
+ setValue(newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__BAR_ACTIONS:
+ getBarActions().clear();
+ getBarActions().addAll((Collection<? extends VMNavigationBarButton>)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__NAVIGATE_BACK:
+ setNavigateBack(newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__ON_NAVIGATE_BACK:
+ setOnNavigateBack((Long)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__DATADESCRIPTION:
+ setDatadescription((YDatadescription)newValue);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__CELL_STYLES:
+ getCellStyles().clear();
+ getCellStyles().addAll((Collection<? extends VMNavigationPageCellStyle>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__TYPE:
+ setType((Class<?>)null);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__EMF_NS_URI:
+ setEmfNsURI(EMF_NS_URI_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__TYPE_QUALIFIED_NAME:
+ setTypeQualifiedName(TYPE_QUALIFIED_NAME_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__BAR_ACTIONS:
+ getBarActions().clear();
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__NAVIGATE_BACK:
+ setNavigateBack(NAVIGATE_BACK_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__ON_NAVIGATE_BACK:
+ setOnNavigateBack(ON_NAVIGATE_BACK_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__DATADESCRIPTION:
+ setDatadescription((YDatadescription)null);
+ return;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__CELL_STYLES:
+ getCellStyles().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @return true, if successful
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__TYPE:
+ return type != null;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__EMF_NS_URI:
+ return EMF_NS_URI_EDEFAULT == null ? emfNsURI != null : !EMF_NS_URI_EDEFAULT.equals(emfNsURI);
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__TYPE_QUALIFIED_NAME:
+ return TYPE_QUALIFIED_NAME_EDEFAULT == null ? typeQualifiedName != null : !TYPE_QUALIFIED_NAME_EDEFAULT.equals(typeQualifiedName);
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__VALUE:
+ return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__BAR_ACTIONS:
+ return barActions != null && !barActions.isEmpty();
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__NAVIGATE_BACK:
+ return NAVIGATE_BACK_EDEFAULT == null ? navigateBack != null : !NAVIGATE_BACK_EDEFAULT.equals(navigateBack);
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__ON_NAVIGATE_BACK:
+ return onNavigateBack != ON_NAVIGATE_BACK_EDEFAULT;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__DATADESCRIPTION:
+ return datadescription != null;
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE__CELL_STYLES:
+ return cellStyles != null && !cellStyles.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the string
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (type: ");
+ result.append(type);
+ result.append(", emfNsURI: ");
+ result.append(emfNsURI);
+ result.append(", typeQualifiedName: ");
+ result.append(typeQualifiedName);
+ result.append(", value: ");
+ result.append(value);
+ result.append(", navigateBack: ");
+ result.append(navigateBack);
+ result.append(", onNavigateBack: ");
+ result.append(onNavigateBack);
+ result.append(')');
+ return result.toString();
+ }
+
+ /**
+ * Sets the label by creating a new datadescription.
+ *
+ * @param label
+ * the new label
+ */
+ public void setLabel(String label) {
+ YDatadescription ds = getDatadescription();
+ if (ds == null) {
+ setDatadescription(createDatadescription(label));
+ getOrphanDatadescriptions().add(getDatadescription());
+ } else {
+ ds.setLabel(label);
+ }
+ }
+
+ /**
+ * Sets the label i18nKey by creating a new datadescription.
+ *
+ * @param i18nKey
+ * the new label i18n key
+ */
+ public void setLabelI18nKey(String i18nKey) {
+ YDatadescription ds = getDatadescription();
+ if (ds == null) {
+ setDatadescription(createDatadescriptionForI18n(i18nKey));
+ getOrphanDatadescriptions().add(getDatadescription());
+ } else {
+ ds.setLabelI18nKey(i18nKey);
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#getCellStyle(org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable)
+ */
+ public VMNavigationPageCellStyle getCellStyle(YEmbeddable element) {
+ for (VMNavigationPageCellStyle style : getCellStyles()) {
+ if (element == style.getTarget()) {
+ return style;
+ }
+ }
+ return null;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage#addCellStyle(org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable)
+ */
+ @Override
+ public VMNavigationPageCellStyle addCellStyle(YEmbeddable element) {
+ VMNavigationPageCellStyle yStyle = VaadinMobileFactory.eINSTANCE
+ .createVMNavigationPageCellStyle();
+ yStyle.setTarget(element);
+ getCellStyles().add(yStyle);
+ return yStyle;
+ }
+
+} // VMNavigationPageImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationRootImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationRootImpl.java
new file mode 100644
index 0000000..e70c3ca
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMNavigationRootImpl.java
@@ -0,0 +1,52 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.osbp.ecview.core.common.model.core.impl.YLayoutImpl;
+
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationRoot;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VM Navigation Root</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ *
+ *
+ * @generated
+ */
+public class VMNavigationRootImpl extends YLayoutImpl implements VMNavigationRoot {
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ protected VMNavigationRootImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the e class
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return VaadinMobilePackage.Literals.VM_NAVIGATION_ROOT;
+ }
+
+} //VMNavigationRootImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMSearchPanelImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMSearchPanelImpl.java
new file mode 100644
index 0000000..86674db
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMSearchPanelImpl.java
@@ -0,0 +1,598 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.osbp.ecview.core.common.model.core.CoreModelPackage;
+import org.eclipse.osbp.ecview.core.common.model.core.YMarginable;
+import org.eclipse.osbp.ecview.core.common.model.core.YSpacingable;
+
+import org.eclipse.osbp.ecview.core.common.model.core.impl.YLayoutImpl;
+
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VM Search Panel</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSearchPanelImpl#isSpacing <em>Spacing</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSearchPanelImpl#isMargin <em>Margin</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSearchPanelImpl#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSearchPanelImpl#getEmfNsURI <em>Emf Ns URI</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSearchPanelImpl#getTypeQualifiedName <em>Type Qualified Name</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSearchPanelImpl#getApplyFilter <em>Apply Filter</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSearchPanelImpl#getFilter <em>Filter</em>}</li>
+ * </ul>
+ *
+ *
+ * @generated
+ */
+public class VMSearchPanelImpl extends YLayoutImpl implements VMSearchPanel {
+ /**
+ * The default value of the '{@link #isSpacing() <em>Spacing</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSpacing()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean SPACING_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isSpacing() <em>Spacing</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isSpacing()
+ * @generated
+ * @ordered
+ */
+ protected boolean spacing = SPACING_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isMargin() <em>Margin</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isMargin()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean MARGIN_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isMargin() <em>Margin</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isMargin()
+ * @generated
+ * @ordered
+ */
+ protected boolean margin = MARGIN_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected Class<?> type;
+
+ /**
+ * The default value of the '{@link #getEmfNsURI() <em>Emf Ns URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEmfNsURI()
+ * @generated
+ * @ordered
+ */
+ protected static final String EMF_NS_URI_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getEmfNsURI() <em>Emf Ns URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEmfNsURI()
+ * @generated
+ * @ordered
+ */
+ protected String emfNsURI = EMF_NS_URI_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getTypeQualifiedName() <em>Type Qualified Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTypeQualifiedName()
+ * @generated
+ * @ordered
+ */
+ protected static final String TYPE_QUALIFIED_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getTypeQualifiedName() <em>Type Qualified Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTypeQualifiedName()
+ * @generated
+ * @ordered
+ */
+ protected String typeQualifiedName = TYPE_QUALIFIED_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getApplyFilter() <em>Apply Filter</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getApplyFilter()
+ * @generated
+ * @ordered
+ */
+ protected static final Object APPLY_FILTER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getApplyFilter() <em>Apply Filter</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getApplyFilter()
+ * @generated
+ * @ordered
+ */
+ protected Object applyFilter = APPLY_FILTER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getFilter() <em>Filter</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFilter()
+ * @generated
+ * @ordered
+ */
+ protected static final Object FILTER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getFilter() <em>Filter</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFilter()
+ * @generated
+ * @ordered
+ */
+ protected Object filter = FILTER_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ protected VMSearchPanelImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the e class
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return VaadinMobilePackage.Literals.VM_SEARCH_PANEL;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #isSpacing() <em>Spacing</em>}'
+ * attribute
+ * @generated
+ */
+ public boolean isSpacing() {
+ return spacing;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newSpacing
+ * the new cached value of the '{@link #isSpacing()
+ * <em>Spacing</em>}' attribute
+ * @generated
+ */
+ public void setSpacing(boolean newSpacing) {
+ boolean oldSpacing = spacing;
+ spacing = newSpacing;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_SEARCH_PANEL__SPACING, oldSpacing, spacing));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #isMargin() <em>Margin</em>}'
+ * attribute
+ * @generated
+ */
+ public boolean isMargin() {
+ return margin;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newMargin
+ * the new cached value of the '{@link #isMargin()
+ * <em>Margin</em>}' attribute
+ * @generated
+ */
+ public void setMargin(boolean newMargin) {
+ boolean oldMargin = margin;
+ margin = newMargin;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_SEARCH_PANEL__MARGIN, oldMargin, margin));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getType() <em>Type</em>}'
+ * attribute
+ * @generated
+ */
+ public Class<?> getType() {
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newType
+ * the new cached value of the '{@link #getType() <em>Type</em>}'
+ * attribute
+ * @generated
+ */
+ public void setType(Class<?> newType) {
+ Class<?> oldType = type;
+ type = newType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_SEARCH_PANEL__TYPE, oldType, type));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getEmfNsURI()
+ * <em>Emf Ns URI</em>}' attribute
+ * @generated
+ */
+ public String getEmfNsURI() {
+ return emfNsURI;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newEmfNsURI
+ * the new cached value of the '{@link #getEmfNsURI()
+ * <em>Emf Ns URI</em>}' attribute
+ * @generated
+ */
+ public void setEmfNsURI(String newEmfNsURI) {
+ String oldEmfNsURI = emfNsURI;
+ emfNsURI = newEmfNsURI;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_SEARCH_PANEL__EMF_NS_URI, oldEmfNsURI, emfNsURI));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getTypeQualifiedName()
+ * <em>Type Qualified Name</em>}' attribute
+ * @generated
+ */
+ public String getTypeQualifiedName() {
+ return typeQualifiedName;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newTypeQualifiedName
+ * the new cached value of the '{@link #getTypeQualifiedName()
+ * <em>Type Qualified Name</em>}' attribute
+ * @generated
+ */
+ public void setTypeQualifiedName(String newTypeQualifiedName) {
+ String oldTypeQualifiedName = typeQualifiedName;
+ typeQualifiedName = newTypeQualifiedName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_SEARCH_PANEL__TYPE_QUALIFIED_NAME, oldTypeQualifiedName, typeQualifiedName));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getApplyFilter()
+ * <em>Apply Filter</em>}' attribute
+ * @generated
+ */
+ public Object getApplyFilter() {
+ return applyFilter;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newApplyFilter
+ * the new cached value of the '{@link #getApplyFilter()
+ * <em>Apply Filter</em>}' attribute
+ * @generated
+ */
+ public void setApplyFilter(Object newApplyFilter) {
+ Object oldApplyFilter = applyFilter;
+ applyFilter = newApplyFilter;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_SEARCH_PANEL__APPLY_FILTER, oldApplyFilter, applyFilter));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getFilter() <em>Filter</em>}'
+ * attribute
+ * @generated
+ */
+ public Object getFilter() {
+ return filter;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newFilter
+ * the new cached value of the '{@link #getFilter()
+ * <em>Filter</em>}' attribute
+ * @generated
+ */
+ public void setFilter(Object newFilter) {
+ Object oldFilter = filter;
+ filter = newFilter;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_SEARCH_PANEL__FILTER, oldFilter, filter));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param resolve
+ * the resolve
+ * @param coreType
+ * the core type
+ * @return the object
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_SEARCH_PANEL__SPACING:
+ return isSpacing();
+ case VaadinMobilePackage.VM_SEARCH_PANEL__MARGIN:
+ return isMargin();
+ case VaadinMobilePackage.VM_SEARCH_PANEL__TYPE:
+ return getType();
+ case VaadinMobilePackage.VM_SEARCH_PANEL__EMF_NS_URI:
+ return getEmfNsURI();
+ case VaadinMobilePackage.VM_SEARCH_PANEL__TYPE_QUALIFIED_NAME:
+ return getTypeQualifiedName();
+ case VaadinMobilePackage.VM_SEARCH_PANEL__APPLY_FILTER:
+ return getApplyFilter();
+ case VaadinMobilePackage.VM_SEARCH_PANEL__FILTER:
+ return getFilter();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param newValue
+ * the new value
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_SEARCH_PANEL__SPACING:
+ setSpacing((Boolean)newValue);
+ return;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__MARGIN:
+ setMargin((Boolean)newValue);
+ return;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__TYPE:
+ setType((Class<?>)newValue);
+ return;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__EMF_NS_URI:
+ setEmfNsURI((String)newValue);
+ return;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__TYPE_QUALIFIED_NAME:
+ setTypeQualifiedName((String)newValue);
+ return;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__APPLY_FILTER:
+ setApplyFilter(newValue);
+ return;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__FILTER:
+ setFilter(newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_SEARCH_PANEL__SPACING:
+ setSpacing(SPACING_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__MARGIN:
+ setMargin(MARGIN_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__TYPE:
+ setType((Class<?>)null);
+ return;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__EMF_NS_URI:
+ setEmfNsURI(EMF_NS_URI_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__TYPE_QUALIFIED_NAME:
+ setTypeQualifiedName(TYPE_QUALIFIED_NAME_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__APPLY_FILTER:
+ setApplyFilter(APPLY_FILTER_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__FILTER:
+ setFilter(FILTER_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @return true, if successful
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_SEARCH_PANEL__SPACING:
+ return spacing != SPACING_EDEFAULT;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__MARGIN:
+ return margin != MARGIN_EDEFAULT;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__TYPE:
+ return type != null;
+ case VaadinMobilePackage.VM_SEARCH_PANEL__EMF_NS_URI:
+ return EMF_NS_URI_EDEFAULT == null ? emfNsURI != null : !EMF_NS_URI_EDEFAULT.equals(emfNsURI);
+ case VaadinMobilePackage.VM_SEARCH_PANEL__TYPE_QUALIFIED_NAME:
+ return TYPE_QUALIFIED_NAME_EDEFAULT == null ? typeQualifiedName != null : !TYPE_QUALIFIED_NAME_EDEFAULT.equals(typeQualifiedName);
+ case VaadinMobilePackage.VM_SEARCH_PANEL__APPLY_FILTER:
+ return APPLY_FILTER_EDEFAULT == null ? applyFilter != null : !APPLY_FILTER_EDEFAULT.equals(applyFilter);
+ case VaadinMobilePackage.VM_SEARCH_PANEL__FILTER:
+ return FILTER_EDEFAULT == null ? filter != null : !FILTER_EDEFAULT.equals(filter);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param derivedFeatureID
+ * the derived feature id
+ * @param baseClass
+ * the base class
+ * @return the int
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == YSpacingable.class) {
+ switch (derivedFeatureID) {
+ case VaadinMobilePackage.VM_SEARCH_PANEL__SPACING: return CoreModelPackage.YSPACINGABLE__SPACING;
+ default: return -1;
+ }
+ }
+ if (baseClass == YMarginable.class) {
+ switch (derivedFeatureID) {
+ case VaadinMobilePackage.VM_SEARCH_PANEL__MARGIN: return CoreModelPackage.YMARGINABLE__MARGIN;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param baseFeatureID
+ * the base feature id
+ * @param baseClass
+ * the base class
+ * @return the int
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == YSpacingable.class) {
+ switch (baseFeatureID) {
+ case CoreModelPackage.YSPACINGABLE__SPACING: return VaadinMobilePackage.VM_SEARCH_PANEL__SPACING;
+ default: return -1;
+ }
+ }
+ if (baseClass == YMarginable.class) {
+ switch (baseFeatureID) {
+ case CoreModelPackage.YMARGINABLE__MARGIN: return VaadinMobilePackage.VM_SEARCH_PANEL__MARGIN;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the string
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (spacing: ");
+ result.append(spacing);
+ result.append(", margin: ");
+ result.append(margin);
+ result.append(", type: ");
+ result.append(type);
+ result.append(", emfNsURI: ");
+ result.append(emfNsURI);
+ result.append(", typeQualifiedName: ");
+ result.append(typeQualifiedName);
+ result.append(", applyFilter: ");
+ result.append(applyFilter);
+ result.append(", filter: ");
+ result.append(filter);
+ result.append(')');
+ return result.toString();
+ }
+
+} //VMSearchPanelImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMSwitchImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMSwitchImpl.java
new file mode 100644
index 0000000..33c85b3
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMSwitchImpl.java
@@ -0,0 +1,315 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.osbp.ecview.core.common.model.core.impl.YFieldImpl;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.YDatadescription;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VM Switch</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSwitchImpl#getDatadescription <em>Datadescription</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMSwitchImpl#isValue <em>Value</em>}</li>
+ * </ul>
+ *
+ *
+ * @generated
+ */
+public class VMSwitchImpl extends YFieldImpl implements VMSwitch {
+ /**
+ * The cached value of the '{@link #getDatadescription() <em>Datadescription</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDatadescription()
+ * @generated
+ * @ordered
+ */
+ protected YDatadescription datadescription;
+
+ /**
+ * The default value of the '{@link #isValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isValue()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean VALUE_EDEFAULT = false;
+ /**
+ * The cached value of the '{@link #isValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isValue()
+ * @generated
+ * @ordered
+ */
+ protected boolean value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ protected VMSwitchImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the e class
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return VaadinMobilePackage.Literals.VM_SWITCH;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getDatadescription()
+ * <em>Datadescription</em>}' reference
+ * @generated
+ */
+ public YDatadescription getDatadescription() {
+ if (datadescription != null && datadescription.eIsProxy()) {
+ InternalEObject oldDatadescription = (InternalEObject)datadescription;
+ datadescription = (YDatadescription)eResolveProxy(oldDatadescription);
+ if (datadescription != oldDatadescription) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, VaadinMobilePackage.VM_SWITCH__DATADESCRIPTION, oldDatadescription, datadescription));
+ }
+ }
+ return datadescription;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the y datadescription
+ * @generated
+ */
+ public YDatadescription basicGetDatadescription() {
+ return datadescription;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newDatadescription
+ * the new cached value of the '{@link #getDatadescription()
+ * <em>Datadescription</em>}' reference
+ * @generated
+ */
+ public void setDatadescription(YDatadescription newDatadescription) {
+ YDatadescription oldDatadescription = datadescription;
+ datadescription = newDatadescription;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_SWITCH__DATADESCRIPTION, oldDatadescription, datadescription));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #isValue() <em>Value</em>}'
+ * attribute
+ * @generated
+ */
+ public boolean isValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newValue
+ * the new cached value of the '{@link #isValue() <em>Value</em>}
+ * ' attribute
+ * @generated
+ */
+ public void setValue(boolean newValue) {
+ boolean oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_SWITCH__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param resolve
+ * the resolve
+ * @param coreType
+ * the core type
+ * @return the object
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_SWITCH__DATADESCRIPTION:
+ if (resolve) return getDatadescription();
+ return basicGetDatadescription();
+ case VaadinMobilePackage.VM_SWITCH__VALUE:
+ return isValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param newValue
+ * the new value
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_SWITCH__DATADESCRIPTION:
+ setDatadescription((YDatadescription)newValue);
+ return;
+ case VaadinMobilePackage.VM_SWITCH__VALUE:
+ setValue((Boolean)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_SWITCH__DATADESCRIPTION:
+ setDatadescription((YDatadescription)null);
+ return;
+ case VaadinMobilePackage.VM_SWITCH__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @return true, if successful
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_SWITCH__DATADESCRIPTION:
+ return datadescription != null;
+ case VaadinMobilePackage.VM_SWITCH__VALUE:
+ return value != VALUE_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the string
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: ");
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+ /**
+ * Sets the label by creating a new datadescription.
+ *
+ * @param label
+ * the new label
+ */
+ public void setLabel(String label) {
+ YDatadescription ds = getDatadescription();
+ if (ds == null) {
+ setDatadescription(createDatadescription(label));
+ getOrphanDatadescriptions().add(getDatadescription());
+ } else {
+ ds.setLabel(label);
+ }
+ }
+
+ /**
+ * Sets the label i18nKey by creating a new datadescription.
+ *
+ * @param i18nKey
+ * the new label i18n key
+ */
+ public void setLabelI18nKey(String i18nKey) {
+ YDatadescription ds = getDatadescription();
+ if (ds == null) {
+ setDatadescription(createDatadescriptionForI18n(i18nKey));
+ getOrphanDatadescriptions().add(getDatadescription());
+ } else {
+ ds.setLabelI18nKey(i18nKey);
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.model.core.impl.YFieldImpl#getLabel()
+ */
+ @Override
+ public String getLabel() {
+ YDatadescription ds = getDatadescription();
+ if (ds != null) {
+ return ds.getLabel();
+ }
+ return "";
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osbp.ecview.core.common.model.core.impl.YFieldImpl#getLabelI18nKey()
+ */
+ @Override
+ public String getLabelI18nKey() {
+ YDatadescription ds = getDatadescription();
+ if (ds != null) {
+ return ds.getLabelI18nKey();
+ }
+ return "";
+ }
+
+} //VMSwitchImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMTabImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMTabImpl.java
new file mode 100644
index 0000000..c68f4e2
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMTabImpl.java
@@ -0,0 +1,890 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.EMap;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EcoreEMap;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.osbp.ecview.core.common.model.core.CoreModelPackage;
+import org.eclipse.osbp.ecview.core.common.model.core.YCssAble;
+import org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable;
+import org.eclipse.osbp.ecview.core.common.model.core.YView;
+import org.eclipse.osbp.ecview.core.common.model.core.impl.YStringToStringMapImpl;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.DatatypesFactory;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.YDatadescription;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationHandler;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '
+ * <em><b>VM Tab</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl#getId <em>Id</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl#getTags <em>Tags</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl#getProperties <em>Properties</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl#getCssClass <em>Css Class</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl#getCssID <em>Css ID</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl#getParent <em>Parent</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl#getEmbeddable <em>Embeddable</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl#getDatadescription <em>Datadescription</em>}</li>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabImpl#getOrphanDatadescriptions <em>Orphan Datadescriptions</em>}</li>
+ * </ul>
+ *
+ *
+ * @generated
+ */
+public class VMTabImpl extends MinimalEObjectImpl.Container implements VMTab {
+ /**
+ * The default value of the '{@link #getId() <em>Id</em>}' attribute. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #getId()
+ * @generated
+ * @ordered
+ */
+ protected static final String ID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getId() <em>Id</em>}' attribute. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #getId()
+ * @generated
+ * @ordered
+ */
+ protected String id = ID_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getTags() <em>Tags</em>}' attribute list.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getTags()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> tags;
+
+ /**
+ * The cached value of the '{@link #getProperties() <em>Properties</em>}' map.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getProperties()
+ * @generated
+ * @ordered
+ */
+ protected EMap<String, String> properties;
+
+ /**
+ * The default value of the '{@link #getCssClass() <em>Css Class</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getCssClass()
+ * @generated
+ * @ordered
+ */
+ protected static final String CSS_CLASS_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getCssClass() <em>Css Class</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getCssClass()
+ * @generated
+ * @ordered
+ */
+ protected String cssClass = CSS_CLASS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getCssID() <em>Css ID</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getCssID()
+ * @generated
+ * @ordered
+ */
+ protected static final String CSS_ID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getCssID() <em>Css ID</em>}' attribute.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getCssID()
+ * @generated
+ * @ordered
+ */
+ protected String cssID = CSS_ID_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getEmbeddable() <em>Embeddable</em>}' containment reference.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getEmbeddable()
+ * @generated
+ * @ordered
+ */
+ protected YEmbeddable embeddable;
+
+ /**
+ * The cached value of the '{@link #getDatadescription() <em>Datadescription</em>}' reference.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getDatadescription()
+ * @generated
+ * @ordered
+ */
+ protected YDatadescription datadescription;
+
+ /**
+ * The cached value of the '{@link #getOrphanDatadescriptions()
+ * <em>Orphan Datadescriptions</em>}' containment reference list. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #getOrphanDatadescriptions()
+ * @generated
+ * @ordered
+ */
+ protected EList<YDatadescription> orphanDatadescriptions;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ protected VMTabImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the e class
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return VaadinMobilePackage.Literals.VM_TAB;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getId() <em>Id</em>}' attribute
+ * @generated
+ */
+ public String getId() {
+ return id;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newId
+ * the new cached value of the '{@link #getId() <em>Id</em>}'
+ * attribute
+ * @generated
+ */
+ public void setId(String newId) {
+ String oldId = id;
+ id = newId;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_TAB__ID, oldId, id));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getName() <em>Name</em>}'
+ * attribute
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newName
+ * the new cached value of the '{@link #getName() <em>Name</em>}'
+ * attribute
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_TAB__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getTags() <em>Tags</em>}'
+ * attribute list
+ * @generated
+ */
+ public EList<String> getTags() {
+ if (tags == null) {
+ tags = new EDataTypeUniqueEList<String>(String.class, this, VaadinMobilePackage.VM_TAB__TAGS);
+ }
+ return tags;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getProperties()
+ * <em>Properties</em>}' map
+ * @generated
+ */
+ public EMap<String, String> getProperties() {
+ if (properties == null) {
+ properties = new EcoreEMap<String,String>(CoreModelPackage.Literals.YSTRING_TO_STRING_MAP, YStringToStringMapImpl.class, this, VaadinMobilePackage.VM_TAB__PROPERTIES);
+ }
+ return properties;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getCssClass()
+ * <em>Css Class</em>}' attribute
+ * @generated
+ */
+ public String getCssClass() {
+ return cssClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newCssClass
+ * the new cached value of the '{@link #getCssClass()
+ * <em>Css Class</em>}' attribute
+ * @generated
+ */
+ public void setCssClass(String newCssClass) {
+ String oldCssClass = cssClass;
+ cssClass = newCssClass;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_TAB__CSS_CLASS, oldCssClass, cssClass));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getCssID() <em>Css ID</em>}'
+ * attribute
+ * @generated
+ */
+ public String getCssID() {
+ return cssID;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newCssID
+ * the new cached value of the '{@link #getCssID()
+ * <em>Css ID</em>}' attribute
+ * @generated
+ */
+ public void setCssID(String newCssID) {
+ String oldCssID = cssID;
+ cssID = newCssID;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_TAB__CSS_ID, oldCssID, cssID));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the parent
+ * @generated
+ */
+ public VMTabSheet getParent() {
+ if (eContainerFeatureID() != VaadinMobilePackage.VM_TAB__PARENT) return null;
+ return (VMTabSheet)eInternalContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newParent
+ * the new parent
+ * @param msgs
+ * the msgs
+ * @return the notification chain
+ * @generated
+ */
+ public NotificationChain basicSetParent(VMTabSheet newParent,
+ NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newParent, VaadinMobilePackage.VM_TAB__PARENT, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newParent
+ * the new parent
+ * @generated
+ */
+ public void setParent(VMTabSheet newParent) {
+ if (newParent != eInternalContainer() || (eContainerFeatureID() != VaadinMobilePackage.VM_TAB__PARENT && newParent != null)) {
+ if (EcoreUtil.isAncestor(this, newParent))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if (newParent != null)
+ msgs = ((InternalEObject)newParent).eInverseAdd(this, VaadinMobilePackage.VM_TAB_SHEET__TABS, VMTabSheet.class, msgs);
+ msgs = basicSetParent(newParent, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_TAB__PARENT, newParent, newParent));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getEmbeddable()
+ * <em>Embeddable</em>}' containment reference
+ * @generated
+ */
+ public YEmbeddable getEmbeddable() {
+ return embeddable;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newEmbeddable
+ * the new embeddable
+ * @param msgs
+ * the msgs
+ * @return the notification chain
+ * @generated
+ */
+ public NotificationChain basicSetEmbeddable(YEmbeddable newEmbeddable,
+ NotificationChain msgs) {
+ YEmbeddable oldEmbeddable = embeddable;
+ embeddable = newEmbeddable;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_TAB__EMBEDDABLE, oldEmbeddable, newEmbeddable);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newEmbeddable
+ * the new cached value of the '{@link #getEmbeddable()
+ * <em>Embeddable</em>}' containment reference
+ * @generated
+ */
+ public void setEmbeddable(YEmbeddable newEmbeddable) {
+ if (newEmbeddable != embeddable) {
+ NotificationChain msgs = null;
+ if (embeddable != null)
+ msgs = ((InternalEObject)embeddable).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - VaadinMobilePackage.VM_TAB__EMBEDDABLE, null, msgs);
+ if (newEmbeddable != null)
+ msgs = ((InternalEObject)newEmbeddable).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - VaadinMobilePackage.VM_TAB__EMBEDDABLE, null, msgs);
+ msgs = basicSetEmbeddable(newEmbeddable, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_TAB__EMBEDDABLE, newEmbeddable, newEmbeddable));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getDatadescription()
+ * <em>Datadescription</em>}' reference
+ * @generated
+ */
+ public YDatadescription getDatadescription() {
+ if (datadescription != null && datadescription.eIsProxy()) {
+ InternalEObject oldDatadescription = (InternalEObject)datadescription;
+ datadescription = (YDatadescription)eResolveProxy(oldDatadescription);
+ if (datadescription != oldDatadescription) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, VaadinMobilePackage.VM_TAB__DATADESCRIPTION, oldDatadescription, datadescription));
+ }
+ }
+ return datadescription;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the y datadescription
+ * @generated
+ */
+ public YDatadescription basicGetDatadescription() {
+ return datadescription;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param newDatadescription
+ * the new cached value of the '{@link #getDatadescription()
+ * <em>Datadescription</em>}' reference
+ * @generated
+ */
+ public void setDatadescription(YDatadescription newDatadescription) {
+ YDatadescription oldDatadescription = datadescription;
+ datadescription = newDatadescription;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, VaadinMobilePackage.VM_TAB__DATADESCRIPTION, oldDatadescription, datadescription));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the cached value of the '{@link #getOrphanDatadescriptions()
+ * <em>Orphan Datadescriptions</em>}' containment reference list
+ * @generated
+ */
+ public EList<YDatadescription> getOrphanDatadescriptions() {
+ if (orphanDatadescriptions == null) {
+ orphanDatadescriptions = new EObjectContainmentEList<YDatadescription>(YDatadescription.class, this, VaadinMobilePackage.VM_TAB__ORPHAN_DATADESCRIPTIONS);
+ }
+ return orphanDatadescriptions;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the view
+ */
+ public YView getView() {
+ VMTabSheet parent = (VMTabSheet) eContainer();
+ if (parent != null) {
+ return parent.getView();
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param otherEnd
+ * the other end
+ * @param featureID
+ * the feature id
+ * @param msgs
+ * the msgs
+ * @return the notification chain
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd,
+ int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_TAB__PARENT:
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetParent((VMTabSheet)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param otherEnd
+ * the other end
+ * @param featureID
+ * the feature id
+ * @param msgs
+ * the msgs
+ * @return the notification chain
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd,
+ int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_TAB__PROPERTIES:
+ return ((InternalEList<?>)getProperties()).basicRemove(otherEnd, msgs);
+ case VaadinMobilePackage.VM_TAB__PARENT:
+ return basicSetParent(null, msgs);
+ case VaadinMobilePackage.VM_TAB__EMBEDDABLE:
+ return basicSetEmbeddable(null, msgs);
+ case VaadinMobilePackage.VM_TAB__ORPHAN_DATADESCRIPTIONS:
+ return ((InternalEList<?>)getOrphanDatadescriptions()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param msgs
+ * the msgs
+ * @return the notification chain
+ * @generated
+ */
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(
+ NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case VaadinMobilePackage.VM_TAB__PARENT:
+ return eInternalContainer().eInverseRemove(this, VaadinMobilePackage.VM_TAB_SHEET__TABS, VMTabSheet.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param resolve
+ * the resolve
+ * @param coreType
+ * the core type
+ * @return the object
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_TAB__ID:
+ return getId();
+ case VaadinMobilePackage.VM_TAB__NAME:
+ return getName();
+ case VaadinMobilePackage.VM_TAB__TAGS:
+ return getTags();
+ case VaadinMobilePackage.VM_TAB__PROPERTIES:
+ if (coreType) return getProperties();
+ else return getProperties().map();
+ case VaadinMobilePackage.VM_TAB__CSS_CLASS:
+ return getCssClass();
+ case VaadinMobilePackage.VM_TAB__CSS_ID:
+ return getCssID();
+ case VaadinMobilePackage.VM_TAB__PARENT:
+ return getParent();
+ case VaadinMobilePackage.VM_TAB__EMBEDDABLE:
+ return getEmbeddable();
+ case VaadinMobilePackage.VM_TAB__DATADESCRIPTION:
+ if (resolve) return getDatadescription();
+ return basicGetDatadescription();
+ case VaadinMobilePackage.VM_TAB__ORPHAN_DATADESCRIPTIONS:
+ return getOrphanDatadescriptions();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @param newValue
+ * the new value
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_TAB__ID:
+ setId((String)newValue);
+ return;
+ case VaadinMobilePackage.VM_TAB__NAME:
+ setName((String)newValue);
+ return;
+ case VaadinMobilePackage.VM_TAB__TAGS:
+ getTags().clear();
+ getTags().addAll((Collection<? extends String>)newValue);
+ return;
+ case VaadinMobilePackage.VM_TAB__PROPERTIES:
+ ((EStructuralFeature.Setting)getProperties()).set(newValue);
+ return;
+ case VaadinMobilePackage.VM_TAB__CSS_CLASS:
+ setCssClass((String)newValue);
+ return;
+ case VaadinMobilePackage.VM_TAB__CSS_ID:
+ setCssID((String)newValue);
+ return;
+ case VaadinMobilePackage.VM_TAB__PARENT:
+ setParent((VMTabSheet)newValue);
+ return;
+ case VaadinMobilePackage.VM_TAB__EMBEDDABLE:
+ setEmbeddable((YEmbeddable)newValue);
+ return;
+ case VaadinMobilePackage.VM_TAB__DATADESCRIPTION:
+ setDatadescription((YDatadescription)newValue);
+ return;
+ case VaadinMobilePackage.VM_TAB__ORPHAN_DATADESCRIPTIONS:
+ getOrphanDatadescriptions().clear();
+ getOrphanDatadescriptions().addAll((Collection<? extends YDatadescription>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_TAB__ID:
+ setId(ID_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_TAB__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_TAB__TAGS:
+ getTags().clear();
+ return;
+ case VaadinMobilePackage.VM_TAB__PROPERTIES:
+ getProperties().clear();
+ return;
+ case VaadinMobilePackage.VM_TAB__CSS_CLASS:
+ setCssClass(CSS_CLASS_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_TAB__CSS_ID:
+ setCssID(CSS_ID_EDEFAULT);
+ return;
+ case VaadinMobilePackage.VM_TAB__PARENT:
+ setParent((VMTabSheet)null);
+ return;
+ case VaadinMobilePackage.VM_TAB__EMBEDDABLE:
+ setEmbeddable((YEmbeddable)null);
+ return;
+ case VaadinMobilePackage.VM_TAB__DATADESCRIPTION:
+ setDatadescription((YDatadescription)null);
+ return;
+ case VaadinMobilePackage.VM_TAB__ORPHAN_DATADESCRIPTIONS:
+ getOrphanDatadescriptions().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param featureID
+ * the feature id
+ * @return true, if successful
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_TAB__ID:
+ return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+ case VaadinMobilePackage.VM_TAB__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case VaadinMobilePackage.VM_TAB__TAGS:
+ return tags != null && !tags.isEmpty();
+ case VaadinMobilePackage.VM_TAB__PROPERTIES:
+ return properties != null && !properties.isEmpty();
+ case VaadinMobilePackage.VM_TAB__CSS_CLASS:
+ return CSS_CLASS_EDEFAULT == null ? cssClass != null : !CSS_CLASS_EDEFAULT.equals(cssClass);
+ case VaadinMobilePackage.VM_TAB__CSS_ID:
+ return CSS_ID_EDEFAULT == null ? cssID != null : !CSS_ID_EDEFAULT.equals(cssID);
+ case VaadinMobilePackage.VM_TAB__PARENT:
+ return getParent() != null;
+ case VaadinMobilePackage.VM_TAB__EMBEDDABLE:
+ return embeddable != null;
+ case VaadinMobilePackage.VM_TAB__DATADESCRIPTION:
+ return datadescription != null;
+ case VaadinMobilePackage.VM_TAB__ORPHAN_DATADESCRIPTIONS:
+ return orphanDatadescriptions != null && !orphanDatadescriptions.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param derivedFeatureID
+ * the derived feature id
+ * @param baseClass
+ * the base class
+ * @return the int
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == YCssAble.class) {
+ switch (derivedFeatureID) {
+ case VaadinMobilePackage.VM_TAB__CSS_CLASS: return CoreModelPackage.YCSS_ABLE__CSS_CLASS;
+ case VaadinMobilePackage.VM_TAB__CSS_ID: return CoreModelPackage.YCSS_ABLE__CSS_ID;
+ default: return -1;
+ }
+ }
+ if (baseClass == VMNavigationHandler.class) {
+ switch (derivedFeatureID) {
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param baseFeatureID
+ * the base feature id
+ * @param baseClass
+ * the base class
+ * @return the int
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == YCssAble.class) {
+ switch (baseFeatureID) {
+ case CoreModelPackage.YCSS_ABLE__CSS_CLASS: return VaadinMobilePackage.VM_TAB__CSS_CLASS;
+ case CoreModelPackage.YCSS_ABLE__CSS_ID: return VaadinMobilePackage.VM_TAB__CSS_ID;
+ default: return -1;
+ }
+ }
+ if (baseClass == VMNavigationHandler.class) {
+ switch (baseFeatureID) {
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the string
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (id: ");
+ result.append(id);
+ result.append(", name: ");
+ result.append(name);
+ result.append(", tags: ");
+ result.append(tags);
+ result.append(", cssClass: ");
+ result.append(cssClass);
+ result.append(", cssID: ");
+ result.append(cssID);
+ result.append(')');
+ return result.toString();
+ }
+
+ /**
+ * Sets the label by creating a new datadescription.
+ *
+ * @param label
+ * the new label
+ */
+ public void setLabel(String label) {
+ YDatadescription ds = getDatadescription();
+ if (ds == null) {
+ setDatadescription(createDatadescription(label));
+ getOrphanDatadescriptions().add(getDatadescription());
+ } else {
+ ds.setLabel(label);
+ }
+ }
+
+ /**
+ * Sets the label i18nKey by creating a new datadescription.
+ *
+ * @param i18nKey
+ * the new label i18n key
+ */
+ public void setLabelI18nKey(String i18nKey) {
+ YDatadescription ds = getDatadescription();
+ if (ds == null) {
+ setDatadescription(createDatadescriptionForI18n(i18nKey));
+ getOrphanDatadescriptions().add(getDatadescription());
+ } else {
+ ds.setLabelI18nKey(i18nKey);
+ }
+ }
+
+ /**
+ * Creates the datadescription.
+ *
+ * @param label
+ * the label
+ * @return the y datadescription
+ */
+ protected YDatadescription createDatadescription(String label) {
+ YDatadescription dsc = DatatypesFactory.eINSTANCE
+ .createYDatadescription();
+ dsc.setLabel(label);
+ return dsc;
+ }
+
+ /**
+ * Creates the datadescription for i18n.
+ *
+ * @param i18nKey
+ * the i18n key
+ * @return the y datadescription
+ */
+ protected YDatadescription createDatadescriptionForI18n(String i18nKey) {
+ YDatadescription dsc = DatatypesFactory.eINSTANCE
+ .createYDatadescription();
+ dsc.setLabelI18nKey(i18nKey);
+ return dsc;
+ }
+
+} // VMTabImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMTabSheetImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMTabSheetImpl.java
new file mode 100644
index 0000000..f7af6ea
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMTabSheetImpl.java
@@ -0,0 +1,181 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.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.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.osbp.ecview.core.common.model.core.impl.YEmbeddableImpl;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '
+ * <em><b>VM Tab Sheet</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.osbp.mobile.vaadin.ecview.model.impl.VMTabSheetImpl#getTabs <em>Tabs</em>}</li>
+ * </ul>
+ *
+ *
+ * @generated
+ */
+public class VMTabSheetImpl extends YEmbeddableImpl implements VMTabSheet {
+ /**
+ * The cached value of the '{@link #getTabs() <em>Tabs</em>}' containment reference list.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @see #getTabs()
+ * @generated
+ * @ordered
+ */
+ protected EList<VMTab> tabs;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected VMTabSheetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return VaadinMobilePackage.Literals.VM_TAB_SHEET;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<VMTab> getTabs() {
+ if (tabs == null) {
+ tabs = new EObjectContainmentWithInverseEList<VMTab>(VMTab.class, this, VaadinMobilePackage.VM_TAB_SHEET__TABS, VaadinMobilePackage.VM_TAB__PARENT);
+ }
+ return tabs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd,
+ int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_TAB_SHEET__TABS:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getTabs()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd,
+ int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_TAB_SHEET__TABS:
+ return ((InternalEList<?>)getTabs()).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 VaadinMobilePackage.VM_TAB_SHEET__TABS:
+ return getTabs();
+ }
+ 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 VaadinMobilePackage.VM_TAB_SHEET__TABS:
+ getTabs().clear();
+ getTabs().addAll((Collection<? extends VMTab>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_TAB_SHEET__TABS:
+ getTabs().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case VaadinMobilePackage.VM_TAB_SHEET__TABS:
+ return tabs != null && !tabs.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ @Override
+ public void setLabel(String label) {
+
+ }
+
+ @Override
+ public void setLabelI18nKey(String i18nKey) {
+
+ }
+
+ @Override
+ public String getLabel() {
+ return "";
+ }
+
+ @Override
+ public String getLabelI18nKey() {
+ return "";
+ }
+
+} // VMTabSheetImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMVerticalComponentGroupImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMVerticalComponentGroupImpl.java
new file mode 100644
index 0000000..437d69f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VMVerticalComponentGroupImpl.java
@@ -0,0 +1,49 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.osbp.ecview.core.common.model.core.impl.YLayoutImpl;
+
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMVerticalComponentGroup;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VM Vertical Component Group</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ *
+ *
+ * @generated
+ */
+public class VMVerticalComponentGroupImpl extends YLayoutImpl implements VMVerticalComponentGroup {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VMVerticalComponentGroupImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return VaadinMobilePackage.Literals.VM_VERTICAL_COMPONENT_GROUP;
+ }
+
+} //VMVerticalComponentGroupImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VaadinMobileFactoryImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VaadinMobileFactoryImpl.java
new file mode 100644
index 0000000..3d0272a
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VaadinMobileFactoryImpl.java
@@ -0,0 +1,244 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.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.osbp.mobile.vaadin.ecview.model.*;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class VaadinMobileFactoryImpl extends EFactoryImpl implements VaadinMobileFactory {
+
+ /**
+ * Creates the default factory implementation. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @return the vaadin mobile factory
+ * @generated
+ */
+ public static VaadinMobileFactory init() {
+ try {
+ VaadinMobileFactory theVaadinMobileFactory = (VaadinMobileFactory)EPackage.Registry.INSTANCE.getEFactory(VaadinMobilePackage.eNS_URI);
+ if (theVaadinMobileFactory != null) {
+ return theVaadinMobileFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new VaadinMobileFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VaadinMobileFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @param eClass
+ * the e class
+ * @return the e object
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case VaadinMobilePackage.VM_HORIZONTAL_BUTTON_GROUP: return createVMHorizontalButtonGroup();
+ case VaadinMobilePackage.VM_SWITCH: return createVMSwitch();
+ case VaadinMobilePackage.VM_VERTICAL_COMPONENT_GROUP: return createVMVerticalComponentGroup();
+ case VaadinMobilePackage.VM_TAB_SHEET: return createVMTabSheet();
+ case VaadinMobilePackage.VM_TAB: return createVMTab();
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE: return createVMNavigationPage();
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE: return createVMNavigationPageCellStyle();
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON: return createVMNavigationButton();
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND: return createVMNavigationCommand();
+ case VaadinMobilePackage.VM_SEARCH_PANEL: return createVMSearchPanel();
+ case VaadinMobilePackage.VM_NAVIGATION_ROOT: return createVMNavigationRoot();
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON: return createVMNavigationBarButton();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM horizontal button group
+ * @generated
+ */
+ public VMHorizontalButtonGroup createVMHorizontalButtonGroup() {
+ VMHorizontalButtonGroupImpl vmHorizontalButtonGroup = new VMHorizontalButtonGroupImpl();
+ return vmHorizontalButtonGroup;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM switch
+ * @generated
+ */
+ public VMSwitch createVMSwitch() {
+ VMSwitchImpl vmSwitch = new VMSwitchImpl();
+ return vmSwitch;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM vertical component group
+ * @generated
+ */
+ public VMVerticalComponentGroup createVMVerticalComponentGroup() {
+ VMVerticalComponentGroupImpl vmVerticalComponentGroup = new VMVerticalComponentGroupImpl();
+ return vmVerticalComponentGroup;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM tab sheet
+ * @generated
+ */
+ public VMTabSheet createVMTabSheet() {
+ VMTabSheetImpl vmTabSheet = new VMTabSheetImpl();
+ return vmTabSheet;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM tab
+ * @generated
+ */
+ public VMTab createVMTab() {
+ VMTabImpl vmTab = new VMTabImpl();
+ return vmTab;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page
+ * @generated
+ */
+ public VMNavigationPage createVMNavigationPage() {
+ VMNavigationPageImpl vmNavigationPage = new VMNavigationPageImpl();
+ return vmNavigationPage;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page cell style
+ * @generated
+ */
+ public VMNavigationPageCellStyle createVMNavigationPageCellStyle() {
+ VMNavigationPageCellStyleImpl vmNavigationPageCellStyle = new VMNavigationPageCellStyleImpl();
+ return vmNavigationPageCellStyle;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation button
+ * @generated
+ */
+ public VMNavigationButton createVMNavigationButton() {
+ VMNavigationButtonImpl vmNavigationButton = new VMNavigationButtonImpl();
+ return vmNavigationButton;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation command
+ * @generated
+ */
+ public VMNavigationCommand createVMNavigationCommand() {
+ VMNavigationCommandImpl vmNavigationCommand = new VMNavigationCommandImpl();
+ return vmNavigationCommand;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM search panel
+ * @generated
+ */
+ public VMSearchPanel createVMSearchPanel() {
+ VMSearchPanelImpl vmSearchPanel = new VMSearchPanelImpl();
+ return vmSearchPanel;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation root
+ * @generated
+ */
+ public VMNavigationRoot createVMNavigationRoot() {
+ VMNavigationRootImpl vmNavigationRoot = new VMNavigationRootImpl();
+ return vmNavigationRoot;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation bar button
+ * @generated
+ */
+ public VMNavigationBarButton createVMNavigationBarButton() {
+ VMNavigationBarButtonImpl vmNavigationBarButton = new VMNavigationBarButtonImpl();
+ return vmNavigationBarButton;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the vaadin mobile package
+ * @generated
+ */
+ public VaadinMobilePackage getVaadinMobilePackage() {
+ return (VaadinMobilePackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the package
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static VaadinMobilePackage getPackage() {
+ return VaadinMobilePackage.eINSTANCE;
+ }
+
+} //VaadinMobileFactoryImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VaadinMobilePackageImpl.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VaadinMobilePackageImpl.java
new file mode 100644
index 0000000..3b0baa5
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/impl/VaadinMobilePackageImpl.java
@@ -0,0 +1,871 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EGenericType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.osbp.ecview.core.common.model.binding.BindingPackage;
+import org.eclipse.osbp.ecview.core.common.model.core.CoreModelPackage;
+import org.eclipse.osbp.ecview.core.common.model.datatypes.DatatypesPackage;
+import org.eclipse.osbp.ecview.core.common.model.validation.ValidationPackage;
+import org.eclipse.osbp.ecview.core.common.model.visibility.VisibilityPackage;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMHorizontalButtonGroup;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationHandler;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationRoot;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VMVerticalComponentGroup;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobileFactory;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage;
+
+// TODO: Auto-generated Javadoc
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class VaadinMobilePackageImpl extends EPackageImpl implements VaadinMobilePackage {
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmHorizontalButtonGroupEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmSwitchEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmVerticalComponentGroupEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmTabSheetEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmTabEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmNavigationPageEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmNavigationPageCellStyleEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmNavigationButtonEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmNavigationCommandEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmNavigationHandlerEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmSearchPanelEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmNavigationRootEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @generated
+ */
+ private EClass vmNavigationBarButtonEClass = 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.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private VaadinMobilePackageImpl() {
+ super(eNS_URI, VaadinMobileFactory.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 VaadinMobilePackage#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 -->
+ *
+ * @return the vaadin mobile package
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static VaadinMobilePackage init() {
+ if (isInited) return (VaadinMobilePackage)EPackage.Registry.INSTANCE.getEPackage(VaadinMobilePackage.eNS_URI);
+
+ // Obtain or create and register package
+ VaadinMobilePackageImpl theVaadinMobilePackage = (VaadinMobilePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof VaadinMobilePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new VaadinMobilePackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ BindingPackage.eINSTANCE.eClass();
+ CoreModelPackage.eINSTANCE.eClass();
+ ValidationPackage.eINSTANCE.eClass();
+ DatatypesPackage.eINSTANCE.eClass();
+ VisibilityPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theVaadinMobilePackage.createPackageContents();
+
+ // Initialize created meta-data
+ theVaadinMobilePackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theVaadinMobilePackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(VaadinMobilePackage.eNS_URI, theVaadinMobilePackage);
+ return theVaadinMobilePackage;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM horizontal button group
+ * @generated
+ */
+ public EClass getVMHorizontalButtonGroup() {
+ return vmHorizontalButtonGroupEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM switch
+ * @generated
+ */
+ public EClass getVMSwitch() {
+ return vmSwitchEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM switch_ datadescription
+ * @generated
+ */
+ public EReference getVMSwitch_Datadescription() {
+ return (EReference)vmSwitchEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM switch_ value
+ * @generated
+ */
+ public EAttribute getVMSwitch_Value() {
+ return (EAttribute)vmSwitchEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM vertical component group
+ * @generated
+ */
+ public EClass getVMVerticalComponentGroup() {
+ return vmVerticalComponentGroupEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM tab sheet
+ * @generated
+ */
+ public EClass getVMTabSheet() {
+ return vmTabSheetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM tab sheet_ tabs
+ * @generated
+ */
+ public EReference getVMTabSheet_Tabs() {
+ return (EReference)vmTabSheetEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM tab
+ * @generated
+ */
+ public EClass getVMTab() {
+ return vmTabEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM tab_ parent
+ * @generated
+ */
+ public EReference getVMTab_Parent() {
+ return (EReference)vmTabEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM tab_ embeddable
+ * @generated
+ */
+ public EReference getVMTab_Embeddable() {
+ return (EReference)vmTabEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM tab_ datadescription
+ * @generated
+ */
+ public EReference getVMTab_Datadescription() {
+ return (EReference)vmTabEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM tab_ orphan datadescriptions
+ * @generated
+ */
+ public EReference getVMTab_OrphanDatadescriptions() {
+ return (EReference)vmTabEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page
+ * @generated
+ */
+ public EClass getVMNavigationPage() {
+ return vmNavigationPageEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page_ type
+ * @generated
+ */
+ public EAttribute getVMNavigationPage_Type() {
+ return (EAttribute)vmNavigationPageEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page_ emf ns uri
+ * @generated
+ */
+ public EAttribute getVMNavigationPage_EmfNsURI() {
+ return (EAttribute)vmNavigationPageEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page_ type qualified name
+ * @generated
+ */
+ public EAttribute getVMNavigationPage_TypeQualifiedName() {
+ return (EAttribute)vmNavigationPageEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page_ value
+ * @generated
+ */
+ public EAttribute getVMNavigationPage_Value() {
+ return (EAttribute)vmNavigationPageEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page_ bar actions
+ * @generated
+ */
+ public EReference getVMNavigationPage_BarActions() {
+ return (EReference)vmNavigationPageEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page_ navigate back
+ * @generated
+ */
+ public EAttribute getVMNavigationPage_NavigateBack() {
+ return (EAttribute)vmNavigationPageEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page_ on navigate back
+ * @generated
+ */
+ public EAttribute getVMNavigationPage_OnNavigateBack() {
+ return (EAttribute)vmNavigationPageEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page_ datadescription
+ * @generated
+ */
+ public EReference getVMNavigationPage_Datadescription() {
+ return (EReference)vmNavigationPageEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page_ cell styles
+ * @generated
+ */
+ public EReference getVMNavigationPage_CellStyles() {
+ return (EReference)vmNavigationPageEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page cell style
+ * @generated
+ */
+ public EClass getVMNavigationPageCellStyle() {
+ return vmNavigationPageCellStyleEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page cell style_ target
+ * @generated
+ */
+ public EReference getVMNavigationPageCellStyle_Target() {
+ return (EReference)vmNavigationPageCellStyleEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation page cell style_ alignment
+ * @generated
+ */
+ public EAttribute getVMNavigationPageCellStyle_Alignment() {
+ return (EAttribute)vmNavigationPageCellStyleEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation button
+ * @generated
+ */
+ public EClass getVMNavigationButton() {
+ return vmNavigationButtonEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation button_ page
+ * @generated
+ */
+ public EReference getVMNavigationButton_Page() {
+ return (EReference)vmNavigationButtonEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation button_ datadescription
+ * @generated
+ */
+ public EReference getVMNavigationButton_Datadescription() {
+ return (EReference)vmNavigationButtonEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation button_ last click time
+ * @generated
+ */
+ public EAttribute getVMNavigationButton_LastClickTime() {
+ return (EAttribute)vmNavigationButtonEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation command
+ * @generated
+ */
+ public EClass getVMNavigationCommand() {
+ return vmNavigationCommandEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation command_ target page
+ * @generated
+ */
+ public EReference getVMNavigationCommand_TargetPage() {
+ return (EReference)vmNavigationCommandEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation command_ value
+ * @generated
+ */
+ public EAttribute getVMNavigationCommand_Value() {
+ return (EAttribute)vmNavigationCommandEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation command_ navigation handler
+ * @generated
+ */
+ public EReference getVMNavigationCommand_NavigationHandler() {
+ return (EReference)vmNavigationCommandEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation handler
+ * @generated
+ */
+ public EClass getVMNavigationHandler() {
+ return vmNavigationHandlerEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM search panel
+ * @generated
+ */
+ public EClass getVMSearchPanel() {
+ return vmSearchPanelEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM search panel_ type
+ * @generated
+ */
+ public EAttribute getVMSearchPanel_Type() {
+ return (EAttribute)vmSearchPanelEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM search panel_ emf ns uri
+ * @generated
+ */
+ public EAttribute getVMSearchPanel_EmfNsURI() {
+ return (EAttribute)vmSearchPanelEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM search panel_ type qualified name
+ * @generated
+ */
+ public EAttribute getVMSearchPanel_TypeQualifiedName() {
+ return (EAttribute)vmSearchPanelEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM search panel_ apply filter
+ * @generated
+ */
+ public EAttribute getVMSearchPanel_ApplyFilter() {
+ return (EAttribute)vmSearchPanelEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM search panel_ filter
+ * @generated
+ */
+ public EAttribute getVMSearchPanel_Filter() {
+ return (EAttribute)vmSearchPanelEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation root
+ * @generated
+ */
+ public EClass getVMNavigationRoot() {
+ return vmNavigationRootEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation bar button
+ * @generated
+ */
+ public EClass getVMNavigationBarButton() {
+ return vmNavigationBarButtonEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation bar button_ datadescription
+ * @generated
+ */
+ public EReference getVMNavigationBarButton_Datadescription() {
+ return (EReference)vmNavigationBarButtonEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the VM navigation bar button_ last click time
+ * @generated
+ */
+ public EAttribute getVMNavigationBarButton_LastClickTime() {
+ return (EAttribute)vmNavigationBarButtonEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->.
+ *
+ * @return the vaadin mobile factory
+ * @generated
+ */
+ public VaadinMobileFactory getVaadinMobileFactory() {
+ return (VaadinMobileFactory)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
+ vmHorizontalButtonGroupEClass = createEClass(VM_HORIZONTAL_BUTTON_GROUP);
+
+ vmSwitchEClass = createEClass(VM_SWITCH);
+ createEReference(vmSwitchEClass, VM_SWITCH__DATADESCRIPTION);
+ createEAttribute(vmSwitchEClass, VM_SWITCH__VALUE);
+
+ vmVerticalComponentGroupEClass = createEClass(VM_VERTICAL_COMPONENT_GROUP);
+
+ vmTabSheetEClass = createEClass(VM_TAB_SHEET);
+ createEReference(vmTabSheetEClass, VM_TAB_SHEET__TABS);
+
+ vmTabEClass = createEClass(VM_TAB);
+ createEReference(vmTabEClass, VM_TAB__PARENT);
+ createEReference(vmTabEClass, VM_TAB__EMBEDDABLE);
+ createEReference(vmTabEClass, VM_TAB__DATADESCRIPTION);
+ createEReference(vmTabEClass, VM_TAB__ORPHAN_DATADESCRIPTIONS);
+
+ vmNavigationPageEClass = createEClass(VM_NAVIGATION_PAGE);
+ createEAttribute(vmNavigationPageEClass, VM_NAVIGATION_PAGE__TYPE);
+ createEAttribute(vmNavigationPageEClass, VM_NAVIGATION_PAGE__EMF_NS_URI);
+ createEAttribute(vmNavigationPageEClass, VM_NAVIGATION_PAGE__TYPE_QUALIFIED_NAME);
+ createEAttribute(vmNavigationPageEClass, VM_NAVIGATION_PAGE__VALUE);
+ createEReference(vmNavigationPageEClass, VM_NAVIGATION_PAGE__BAR_ACTIONS);
+ createEAttribute(vmNavigationPageEClass, VM_NAVIGATION_PAGE__NAVIGATE_BACK);
+ createEAttribute(vmNavigationPageEClass, VM_NAVIGATION_PAGE__ON_NAVIGATE_BACK);
+ createEReference(vmNavigationPageEClass, VM_NAVIGATION_PAGE__DATADESCRIPTION);
+ createEReference(vmNavigationPageEClass, VM_NAVIGATION_PAGE__CELL_STYLES);
+
+ vmNavigationPageCellStyleEClass = createEClass(VM_NAVIGATION_PAGE_CELL_STYLE);
+ createEReference(vmNavigationPageCellStyleEClass, VM_NAVIGATION_PAGE_CELL_STYLE__TARGET);
+ createEAttribute(vmNavigationPageCellStyleEClass, VM_NAVIGATION_PAGE_CELL_STYLE__ALIGNMENT);
+
+ vmNavigationButtonEClass = createEClass(VM_NAVIGATION_BUTTON);
+ createEReference(vmNavigationButtonEClass, VM_NAVIGATION_BUTTON__PAGE);
+ createEReference(vmNavigationButtonEClass, VM_NAVIGATION_BUTTON__DATADESCRIPTION);
+ createEAttribute(vmNavigationButtonEClass, VM_NAVIGATION_BUTTON__LAST_CLICK_TIME);
+
+ vmNavigationCommandEClass = createEClass(VM_NAVIGATION_COMMAND);
+ createEReference(vmNavigationCommandEClass, VM_NAVIGATION_COMMAND__NAVIGATION_HANDLER);
+ createEReference(vmNavigationCommandEClass, VM_NAVIGATION_COMMAND__TARGET_PAGE);
+ createEAttribute(vmNavigationCommandEClass, VM_NAVIGATION_COMMAND__VALUE);
+
+ vmNavigationHandlerEClass = createEClass(VM_NAVIGATION_HANDLER);
+
+ vmSearchPanelEClass = createEClass(VM_SEARCH_PANEL);
+ createEAttribute(vmSearchPanelEClass, VM_SEARCH_PANEL__TYPE);
+ createEAttribute(vmSearchPanelEClass, VM_SEARCH_PANEL__EMF_NS_URI);
+ createEAttribute(vmSearchPanelEClass, VM_SEARCH_PANEL__TYPE_QUALIFIED_NAME);
+ createEAttribute(vmSearchPanelEClass, VM_SEARCH_PANEL__APPLY_FILTER);
+ createEAttribute(vmSearchPanelEClass, VM_SEARCH_PANEL__FILTER);
+
+ vmNavigationRootEClass = createEClass(VM_NAVIGATION_ROOT);
+
+ vmNavigationBarButtonEClass = createEClass(VM_NAVIGATION_BAR_BUTTON);
+ createEReference(vmNavigationBarButtonEClass, VM_NAVIGATION_BAR_BUTTON__DATADESCRIPTION);
+ createEAttribute(vmNavigationBarButtonEClass, VM_NAVIGATION_BAR_BUTTON__LAST_CLICK_TIME);
+ }
+
+ /**
+ * <!-- 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
+ CoreModelPackage theCoreModelPackage = (CoreModelPackage)EPackage.Registry.INSTANCE.getEPackage(CoreModelPackage.eNS_URI);
+ DatatypesPackage theDatatypesPackage = (DatatypesPackage)EPackage.Registry.INSTANCE.getEPackage(DatatypesPackage.eNS_URI);
+ BindingPackage theBindingPackage = (BindingPackage)EPackage.Registry.INSTANCE.getEPackage(BindingPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ vmHorizontalButtonGroupEClass.getESuperTypes().add(theCoreModelPackage.getYLayout());
+ vmSwitchEClass.getESuperTypes().add(theCoreModelPackage.getYField());
+ vmVerticalComponentGroupEClass.getESuperTypes().add(theCoreModelPackage.getYLayout());
+ vmTabSheetEClass.getESuperTypes().add(theCoreModelPackage.getYEmbeddable());
+ vmTabEClass.getESuperTypes().add(theCoreModelPackage.getYElement());
+ vmTabEClass.getESuperTypes().add(theCoreModelPackage.getYCssAble());
+ vmTabEClass.getESuperTypes().add(this.getVMNavigationHandler());
+ vmNavigationPageEClass.getESuperTypes().add(theCoreModelPackage.getYLayout());
+ vmNavigationPageEClass.getESuperTypes().add(this.getVMNavigationHandler());
+ vmNavigationButtonEClass.getESuperTypes().add(theCoreModelPackage.getYAction());
+ vmNavigationCommandEClass.getESuperTypes().add(theCoreModelPackage.getYCommand());
+ vmNavigationHandlerEClass.getESuperTypes().add(theCoreModelPackage.getYElement());
+ vmSearchPanelEClass.getESuperTypes().add(theCoreModelPackage.getYLayout());
+ vmSearchPanelEClass.getESuperTypes().add(theCoreModelPackage.getYSpacingable());
+ vmSearchPanelEClass.getESuperTypes().add(theCoreModelPackage.getYMarginable());
+ vmNavigationRootEClass.getESuperTypes().add(theCoreModelPackage.getYLayout());
+ vmNavigationRootEClass.getESuperTypes().add(this.getVMNavigationHandler());
+ vmNavigationBarButtonEClass.getESuperTypes().add(theCoreModelPackage.getYAction());
+ vmNavigationBarButtonEClass.getESuperTypes().add(theCoreModelPackage.getYVisibleable());
+ vmNavigationBarButtonEClass.getESuperTypes().add(theCoreModelPackage.getYEditable());
+ vmNavigationBarButtonEClass.getESuperTypes().add(theCoreModelPackage.getYEnable());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(vmHorizontalButtonGroupEClass, VMHorizontalButtonGroup.class, "VMHorizontalButtonGroup", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(vmSwitchEClass, VMSwitch.class, "VMSwitch", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getVMSwitch_Datadescription(), theDatatypesPackage.getYDatadescription(), null, "datadescription", null, 0, 1, VMSwitch.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMSwitch_Value(), ecorePackage.getEBoolean(), "value", null, 0, 1, VMSwitch.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(vmVerticalComponentGroupEClass, VMVerticalComponentGroup.class, "VMVerticalComponentGroup", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(vmTabSheetEClass, VMTabSheet.class, "VMTabSheet", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getVMTabSheet_Tabs(), this.getVMTab(), this.getVMTab_Parent(), "tabs", null, 0, -1, VMTabSheet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(vmTabEClass, VMTab.class, "VMTab", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getVMTab_Parent(), this.getVMTabSheet(), this.getVMTabSheet_Tabs(), "parent", null, 1, 1, VMTab.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVMTab_Embeddable(), theCoreModelPackage.getYEmbeddable(), null, "embeddable", null, 1, 1, VMTab.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVMTab_Datadescription(), theDatatypesPackage.getYDatadescription(), null, "datadescription", null, 0, 1, VMTab.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVMTab_OrphanDatadescriptions(), theDatatypesPackage.getYDatadescription(), null, "orphanDatadescriptions", null, 0, -1, VMTab.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ addEOperation(vmTabEClass, theCoreModelPackage.getYView(), "getView", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(vmNavigationPageEClass, VMNavigationPage.class, "VMNavigationPage", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ EGenericType g1 = createEGenericType(ecorePackage.getEJavaClass());
+ EGenericType g2 = createEGenericType();
+ g1.getETypeArguments().add(g2);
+ initEAttribute(getVMNavigationPage_Type(), g1, "type", null, 0, 1, VMNavigationPage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMNavigationPage_EmfNsURI(), ecorePackage.getEString(), "emfNsURI", null, 0, 1, VMNavigationPage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMNavigationPage_TypeQualifiedName(), ecorePackage.getEString(), "typeQualifiedName", null, 0, 1, VMNavigationPage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMNavigationPage_Value(), ecorePackage.getEJavaObject(), "value", null, 0, 1, VMNavigationPage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVMNavigationPage_BarActions(), this.getVMNavigationBarButton(), null, "barActions", null, 0, -1, VMNavigationPage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMNavigationPage_NavigateBack(), ecorePackage.getEJavaObject(), "navigateBack", null, 0, 1, VMNavigationPage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMNavigationPage_OnNavigateBack(), ecorePackage.getELong(), "onNavigateBack", null, 0, 1, VMNavigationPage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVMNavigationPage_Datadescription(), theDatatypesPackage.getYDatadescription(), null, "datadescription", null, 0, 1, VMNavigationPage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVMNavigationPage_CellStyles(), this.getVMNavigationPageCellStyle(), null, "cellStyles", null, 0, -1, VMNavigationPage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ addEOperation(vmNavigationPageEClass, theBindingPackage.getYECViewModelValueBindingEndpoint(), "createValueEndpoint", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(vmNavigationPageCellStyleEClass, VMNavigationPageCellStyle.class, "VMNavigationPageCellStyle", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getVMNavigationPageCellStyle_Target(), theCoreModelPackage.getYEmbeddable(), null, "target", null, 1, 1, VMNavigationPageCellStyle.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMNavigationPageCellStyle_Alignment(), theCoreModelPackage.getYAlignment(), "alignment", "UNDEFINED", 0, 1, VMNavigationPageCellStyle.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(vmNavigationButtonEClass, VMNavigationButton.class, "VMNavigationButton", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getVMNavigationButton_Page(), this.getVMNavigationPage(), null, "page", null, 0, 1, VMNavigationButton.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVMNavigationButton_Datadescription(), theDatatypesPackage.getYDatadescription(), null, "datadescription", null, 0, 1, VMNavigationButton.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMNavigationButton_LastClickTime(), ecorePackage.getELong(), "lastClickTime", null, 0, 1, VMNavigationButton.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ addEOperation(vmNavigationButtonEClass, theCoreModelPackage.getYView(), "getView", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(vmNavigationCommandEClass, VMNavigationCommand.class, "VMNavigationCommand", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getVMNavigationCommand_NavigationHandler(), this.getVMNavigationHandler(), null, "navigationHandler", null, 0, 1, VMNavigationCommand.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVMNavigationCommand_TargetPage(), this.getVMNavigationPage(), null, "targetPage", null, 0, 1, VMNavigationCommand.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMNavigationCommand_Value(), ecorePackage.getEJavaObject(), "value", null, 0, 1, VMNavigationCommand.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ addEOperation(vmNavigationCommandEClass, theBindingPackage.getYECViewModelValueBindingEndpoint(), "createNavigationValueEndpoint", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(vmNavigationHandlerEClass, VMNavigationHandler.class, "VMNavigationHandler", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(vmSearchPanelEClass, VMSearchPanel.class, "VMSearchPanel", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ g1 = createEGenericType(ecorePackage.getEJavaClass());
+ g2 = createEGenericType();
+ g1.getETypeArguments().add(g2);
+ initEAttribute(getVMSearchPanel_Type(), g1, "type", null, 0, 1, VMSearchPanel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMSearchPanel_EmfNsURI(), ecorePackage.getEString(), "emfNsURI", null, 0, 1, VMSearchPanel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMSearchPanel_TypeQualifiedName(), ecorePackage.getEString(), "typeQualifiedName", null, 0, 1, VMSearchPanel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMSearchPanel_ApplyFilter(), ecorePackage.getEJavaObject(), "applyFilter", null, 0, 1, VMSearchPanel.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMSearchPanel_Filter(), ecorePackage.getEJavaObject(), "filter", null, 0, 1, VMSearchPanel.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(vmNavigationRootEClass, VMNavigationRoot.class, "VMNavigationRoot", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(vmNavigationBarButtonEClass, VMNavigationBarButton.class, "VMNavigationBarButton", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getVMNavigationBarButton_Datadescription(), theDatatypesPackage.getYDatadescription(), null, "datadescription", null, 0, 1, VMNavigationBarButton.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVMNavigationBarButton_LastClickTime(), ecorePackage.getELong(), "lastClickTime", null, 0, 1, VMNavigationBarButton.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ addEOperation(vmNavigationBarButtonEClass, theCoreModelPackage.getYView(), "getView", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //VaadinMobilePackageImpl
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/util/VaadinMobileAdapterFactory.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/util/VaadinMobileAdapterFactory.java
new file mode 100644
index 0000000..163cdb8
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/util/VaadinMobileAdapterFactory.java
@@ -0,0 +1,607 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.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.EObject;
+import org.eclipse.osbp.ecview.core.common.model.core.YAction;
+import org.eclipse.osbp.ecview.core.common.model.core.YAuthorizationable;
+import org.eclipse.osbp.ecview.core.common.model.core.YCommand;
+import org.eclipse.osbp.ecview.core.common.model.core.YCssAble;
+import org.eclipse.osbp.ecview.core.common.model.core.YEditable;
+import org.eclipse.osbp.ecview.core.common.model.core.YElement;
+import org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable;
+import org.eclipse.osbp.ecview.core.common.model.core.YEnable;
+import org.eclipse.osbp.ecview.core.common.model.core.YField;
+import org.eclipse.osbp.ecview.core.common.model.core.YFocusable;
+import org.eclipse.osbp.ecview.core.common.model.core.YLayout;
+import org.eclipse.osbp.ecview.core.common.model.core.YMarginable;
+import org.eclipse.osbp.ecview.core.common.model.core.YSpacingable;
+import org.eclipse.osbp.ecview.core.common.model.core.YVisibleable;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.*;
+
+/**
+ * <!-- 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.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage
+ * @generated
+ */
+public class VaadinMobileAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static VaadinMobilePackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VaadinMobileAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = VaadinMobilePackage.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 VaadinMobileSwitch<Adapter> modelSwitch =
+ new VaadinMobileSwitch<Adapter>() {
+ @Override
+ public Adapter caseVMHorizontalButtonGroup(VMHorizontalButtonGroup object) {
+ return createVMHorizontalButtonGroupAdapter();
+ }
+ @Override
+ public Adapter caseVMSwitch(VMSwitch object) {
+ return createVMSwitchAdapter();
+ }
+ @Override
+ public Adapter caseVMVerticalComponentGroup(VMVerticalComponentGroup object) {
+ return createVMVerticalComponentGroupAdapter();
+ }
+ @Override
+ public Adapter caseVMTabSheet(VMTabSheet object) {
+ return createVMTabSheetAdapter();
+ }
+ @Override
+ public Adapter caseVMTab(VMTab object) {
+ return createVMTabAdapter();
+ }
+ @Override
+ public Adapter caseVMNavigationPage(VMNavigationPage object) {
+ return createVMNavigationPageAdapter();
+ }
+ @Override
+ public Adapter caseVMNavigationPageCellStyle(VMNavigationPageCellStyle object) {
+ return createVMNavigationPageCellStyleAdapter();
+ }
+ @Override
+ public Adapter caseVMNavigationButton(VMNavigationButton object) {
+ return createVMNavigationButtonAdapter();
+ }
+ @Override
+ public Adapter caseVMNavigationCommand(VMNavigationCommand object) {
+ return createVMNavigationCommandAdapter();
+ }
+ @Override
+ public Adapter caseVMNavigationHandler(VMNavigationHandler object) {
+ return createVMNavigationHandlerAdapter();
+ }
+ @Override
+ public Adapter caseVMSearchPanel(VMSearchPanel object) {
+ return createVMSearchPanelAdapter();
+ }
+ @Override
+ public Adapter caseVMNavigationRoot(VMNavigationRoot object) {
+ return createVMNavigationRootAdapter();
+ }
+ @Override
+ public Adapter caseVMNavigationBarButton(VMNavigationBarButton object) {
+ return createVMNavigationBarButtonAdapter();
+ }
+ @Override
+ public Adapter caseYElement(YElement object) {
+ return createYElementAdapter();
+ }
+ @Override
+ public Adapter caseYCssAble(YCssAble object) {
+ return createYCssAbleAdapter();
+ }
+ @Override
+ public Adapter caseYVisibleable(YVisibleable object) {
+ return createYVisibleableAdapter();
+ }
+ @Override
+ public Adapter caseYAuthorizationable(YAuthorizationable object) {
+ return createYAuthorizationableAdapter();
+ }
+ @Override
+ public Adapter caseYEmbeddable(YEmbeddable object) {
+ return createYEmbeddableAdapter();
+ }
+ @Override
+ public Adapter caseYEditable(YEditable object) {
+ return createYEditableAdapter();
+ }
+ @Override
+ public Adapter caseYEnable(YEnable object) {
+ return createYEnableAdapter();
+ }
+ @Override
+ public Adapter caseYLayout(YLayout object) {
+ return createYLayoutAdapter();
+ }
+ @Override
+ public Adapter caseYFocusable(YFocusable object) {
+ return createYFocusableAdapter();
+ }
+ @Override
+ public Adapter caseYField(YField object) {
+ return createYFieldAdapter();
+ }
+ @Override
+ public Adapter caseYAction(YAction object) {
+ return createYActionAdapter();
+ }
+ @Override
+ public Adapter caseYCommand(YCommand object) {
+ return createYCommandAdapter();
+ }
+ @Override
+ public Adapter caseYSpacingable(YSpacingable object) {
+ return createYSpacingableAdapter();
+ }
+ @Override
+ public Adapter caseYMarginable(YMarginable object) {
+ return createYMarginableAdapter();
+ }
+ @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.osbp.mobile.vaadin.ecview.model.VMHorizontalButtonGroup <em>VM Horizontal Button Group</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.osbp.mobile.vaadin.ecview.model.VMHorizontalButtonGroup
+ * @generated
+ */
+ public Adapter createVMHorizontalButtonGroupAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSwitch <em>VM Switch</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.osbp.mobile.vaadin.ecview.model.VMSwitch
+ * @generated
+ */
+ public Adapter createVMSwitchAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMVerticalComponentGroup <em>VM Vertical Component Group</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.osbp.mobile.vaadin.ecview.model.VMVerticalComponentGroup
+ * @generated
+ */
+ public Adapter createVMVerticalComponentGroupAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTabSheet <em>VM Tab 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.osbp.mobile.vaadin.ecview.model.VMTabSheet
+ * @generated
+ */
+ public Adapter createVMTabSheetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMTab <em>VM Tab</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.osbp.mobile.vaadin.ecview.model.VMTab
+ * @generated
+ */
+ public Adapter createVMTabAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPage <em>VM Navigation Page</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.osbp.mobile.vaadin.ecview.model.VMNavigationPage
+ * @generated
+ */
+ public Adapter createVMNavigationPageAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle <em>VM Navigation Page Cell Style</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.osbp.mobile.vaadin.ecview.model.VMNavigationPageCellStyle
+ * @generated
+ */
+ public Adapter createVMNavigationPageCellStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationButton <em>VM Navigation Button</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.osbp.mobile.vaadin.ecview.model.VMNavigationButton
+ * @generated
+ */
+ public Adapter createVMNavigationButtonAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationCommand <em>VM Navigation Command</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.osbp.mobile.vaadin.ecview.model.VMNavigationCommand
+ * @generated
+ */
+ public Adapter createVMNavigationCommandAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationHandler <em>VM Navigation Handler</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.osbp.mobile.vaadin.ecview.model.VMNavigationHandler
+ * @generated
+ */
+ public Adapter createVMNavigationHandlerAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMSearchPanel <em>VM Search Panel</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.osbp.mobile.vaadin.ecview.model.VMSearchPanel
+ * @generated
+ */
+ public Adapter createVMSearchPanelAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationRoot <em>VM Navigation Root</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.osbp.mobile.vaadin.ecview.model.VMNavigationRoot
+ * @generated
+ */
+ public Adapter createVMNavigationRootAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton <em>VM Navigation Bar Button</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.osbp.mobile.vaadin.ecview.model.VMNavigationBarButton
+ * @generated
+ */
+ public Adapter createVMNavigationBarButtonAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YElement <em>YElement</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.osbp.ecview.core.common.model.core.YElement
+ * @generated
+ */
+ public Adapter createYElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YCssAble <em>YCss Able</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.osbp.ecview.core.common.model.core.YCssAble
+ * @generated
+ */
+ public Adapter createYCssAbleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YVisibleable <em>YVisibleable</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.osbp.ecview.core.common.model.core.YVisibleable
+ * @generated
+ */
+ public Adapter createYVisibleableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YAuthorizationable <em>YAuthorizationable</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.osbp.ecview.core.common.model.core.YAuthorizationable
+ * @generated
+ */
+ public Adapter createYAuthorizationableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable <em>YEmbeddable</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.osbp.ecview.core.common.model.core.YEmbeddable
+ * @generated
+ */
+ public Adapter createYEmbeddableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YLayout <em>YLayout</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.osbp.ecview.core.common.model.core.YLayout
+ * @generated
+ */
+ public Adapter createYLayoutAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YFocusable <em>YFocusable</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.osbp.ecview.core.common.model.core.YFocusable
+ * @generated
+ */
+ public Adapter createYFocusableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YEditable <em>YEditable</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.osbp.ecview.core.common.model.core.YEditable
+ * @generated
+ */
+ public Adapter createYEditableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YEnable <em>YEnable</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.osbp.ecview.core.common.model.core.YEnable
+ * @generated
+ */
+ public Adapter createYEnableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YField <em>YField</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.osbp.ecview.core.common.model.core.YField
+ * @generated
+ */
+ public Adapter createYFieldAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YAction <em>YAction</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.osbp.ecview.core.common.model.core.YAction
+ * @generated
+ */
+ public Adapter createYActionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YCommand <em>YCommand</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.osbp.ecview.core.common.model.core.YCommand
+ * @generated
+ */
+ public Adapter createYCommandAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YSpacingable <em>YSpacingable</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.osbp.ecview.core.common.model.core.YSpacingable
+ * @generated
+ */
+ public Adapter createYSpacingableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.osbp.ecview.core.common.model.core.YMarginable <em>YMarginable</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.osbp.ecview.core.common.model.core.YMarginable
+ * @generated
+ */
+ public Adapter createYMarginableAdapter() {
+ 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;
+ }
+
+} //VaadinMobileAdapterFactory
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/util/VaadinMobileSwitch.java b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/util/VaadinMobileSwitch.java
new file mode 100644
index 0000000..aba9101
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/src/org/eclipse/osbp/mobile/vaadin/ecview/model/util/VaadinMobileSwitch.java
@@ -0,0 +1,671 @@
+/**
+ * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+ * 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:
+ * Florian Pirchner - Initial implementation
+ */
+package org.eclipse.osbp.mobile.vaadin.ecview.model.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.osbp.ecview.core.common.model.core.YAction;
+import org.eclipse.osbp.ecview.core.common.model.core.YAuthorizationable;
+import org.eclipse.osbp.ecview.core.common.model.core.YCommand;
+import org.eclipse.osbp.ecview.core.common.model.core.YCssAble;
+import org.eclipse.osbp.ecview.core.common.model.core.YEditable;
+import org.eclipse.osbp.ecview.core.common.model.core.YElement;
+import org.eclipse.osbp.ecview.core.common.model.core.YEmbeddable;
+import org.eclipse.osbp.ecview.core.common.model.core.YEnable;
+import org.eclipse.osbp.ecview.core.common.model.core.YField;
+import org.eclipse.osbp.ecview.core.common.model.core.YFocusable;
+import org.eclipse.osbp.ecview.core.common.model.core.YLayout;
+import org.eclipse.osbp.ecview.core.common.model.core.YMarginable;
+import org.eclipse.osbp.ecview.core.common.model.core.YSpacingable;
+import org.eclipse.osbp.ecview.core.common.model.core.YVisibleable;
+import org.eclipse.osbp.mobile.vaadin.ecview.model.*;
+
+/**
+ * <!-- 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.osbp.mobile.vaadin.ecview.model.VaadinMobilePackage
+ * @generated
+ */
+public class VaadinMobileSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static VaadinMobilePackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VaadinMobileSwitch() {
+ if (modelPackage == null) {
+ modelPackage = VaadinMobilePackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param 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 VaadinMobilePackage.VM_HORIZONTAL_BUTTON_GROUP: {
+ VMHorizontalButtonGroup vmHorizontalButtonGroup = (VMHorizontalButtonGroup)theEObject;
+ T result = caseVMHorizontalButtonGroup(vmHorizontalButtonGroup);
+ if (result == null) result = caseYLayout(vmHorizontalButtonGroup);
+ if (result == null) result = caseYEmbeddable(vmHorizontalButtonGroup);
+ if (result == null) result = caseYEditable(vmHorizontalButtonGroup);
+ if (result == null) result = caseYEnable(vmHorizontalButtonGroup);
+ if (result == null) result = caseYElement(vmHorizontalButtonGroup);
+ if (result == null) result = caseYCssAble(vmHorizontalButtonGroup);
+ if (result == null) result = caseYVisibleable(vmHorizontalButtonGroup);
+ if (result == null) result = caseYAuthorizationable(vmHorizontalButtonGroup);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case VaadinMobilePackage.VM_SWITCH: {
+ VMSwitch vmSwitch = (VMSwitch)theEObject;
+ T result = caseVMSwitch(vmSwitch);
+ if (result == null) result = caseYField(vmSwitch);
+ if (result == null) result = caseYEmbeddable(vmSwitch);
+ if (result == null) result = caseYEditable(vmSwitch);
+ if (result == null) result = caseYEnable(vmSwitch);
+ if (result == null) result = caseYFocusable(vmSwitch);
+ if (result == null) result = caseYElement(vmSwitch);
+ if (result == null) result = caseYCssAble(vmSwitch);
+ if (result == null) result = caseYVisibleable(vmSwitch);
+ if (result == null) result = caseYAuthorizationable(vmSwitch);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case VaadinMobilePackage.VM_VERTICAL_COMPONENT_GROUP: {
+ VMVerticalComponentGroup vmVerticalComponentGroup = (VMVerticalComponentGroup)theEObject;
+ T result = caseVMVerticalComponentGroup(vmVerticalComponentGroup);
+ if (result == null) result = caseYLayout(vmVerticalComponentGroup);
+ if (result == null) result = caseYEmbeddable(vmVerticalComponentGroup);
+ if (result == null) result = caseYEditable(vmVerticalComponentGroup);
+ if (result == null) result = caseYEnable(vmVerticalComponentGroup);
+ if (result == null) result = caseYElement(vmVerticalComponentGroup);
+ if (result == null) result = caseYCssAble(vmVerticalComponentGroup);
+ if (result == null) result = caseYVisibleable(vmVerticalComponentGroup);
+ if (result == null) result = caseYAuthorizationable(vmVerticalComponentGroup);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case VaadinMobilePackage.VM_TAB_SHEET: {
+ VMTabSheet vmTabSheet = (VMTabSheet)theEObject;
+ T result = caseVMTabSheet(vmTabSheet);
+ if (result == null) result = caseYEmbeddable(vmTabSheet);
+ if (result == null) result = caseYElement(vmTabSheet);
+ if (result == null) result = caseYCssAble(vmTabSheet);
+ if (result == null) result = caseYVisibleable(vmTabSheet);
+ if (result == null) result = caseYAuthorizationable(vmTabSheet);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case VaadinMobilePackage.VM_TAB: {
+ VMTab vmTab = (VMTab)theEObject;
+ T result = caseVMTab(vmTab);
+ if (result == null) result = caseYCssAble(vmTab);
+ if (result == null) result = caseVMNavigationHandler(vmTab);
+ if (result == null) result = caseYElement(vmTab);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE: {
+ VMNavigationPage vmNavigationPage = (VMNavigationPage)theEObject;
+ T result = caseVMNavigationPage(vmNavigationPage);
+ if (result == null) result = caseYLayout(vmNavigationPage);
+ if (result == null) result = caseVMNavigationHandler(vmNavigationPage);
+ if (result == null) result = caseYEmbeddable(vmNavigationPage);
+ if (result == null) result = caseYEditable(vmNavigationPage);
+ if (result == null) result = caseYEnable(vmNavigationPage);
+ if (result == null) result = caseYElement(vmNavigationPage);
+ if (result == null) result = caseYCssAble(vmNavigationPage);
+ if (result == null) result = caseYVisibleable(vmNavigationPage);
+ if (result == null) result = caseYAuthorizationable(vmNavigationPage);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case VaadinMobilePackage.VM_NAVIGATION_PAGE_CELL_STYLE: {
+ VMNavigationPageCellStyle vmNavigationPageCellStyle = (VMNavigationPageCellStyle)theEObject;
+ T result = caseVMNavigationPageCellStyle(vmNavigationPageCellStyle);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case VaadinMobilePackage.VM_NAVIGATION_BUTTON: {
+ VMNavigationButton vmNavigationButton = (VMNavigationButton)theEObject;
+ T result = caseVMNavigationButton(vmNavigationButton);
+ if (result == null) result = caseYAction(vmNavigationButton);
+ if (result == null) result = caseYEmbeddable(vmNavigationButton);
+ if (result == null) result = caseYEnable(vmNavigationButton);
+ if (result == null) result = caseYElement(vmNavigationButton);
+ if (result == null) result = caseYCssAble(vmNavigationButton);
+ if (result == null) result = caseYVisibleable(vmNavigationButton);
+ if (result == null) result = caseYAuthorizationable(vmNavigationButton);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case VaadinMobilePackage.VM_NAVIGATION_COMMAND: {
+ VMNavigationCommand vmNavigationCommand = (VMNavigationCommand)theEObject;
+ T result = caseVMNavigationCommand(vmNavigationCommand);
+ if (result == null) result = caseYCommand(vmNavigationCommand);
+ if (result == null) result = caseYElement(vmNavigationCommand);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case VaadinMobilePackage.VM_NAVIGATION_HANDLER: {
+ VMNavigationHandler vmNavigationHandler = (VMNavigationHandler)theEObject;
+ T result = caseVMNavigationHandler(vmNavigationHandler);
+ if (result == null) result = caseYElement(vmNavigationHandler);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case VaadinMobilePackage.VM_SEARCH_PANEL: {
+ VMSearchPanel vmSearchPanel = (VMSearchPanel)theEObject;
+ T result = caseVMSearchPanel(vmSearchPanel);
+ if (result == null) result = caseYLayout(vmSearchPanel);
+ if (result == null) result = caseYSpacingable(vmSearchPanel);
+ if (result == null) result = caseYMarginable(vmSearchPanel);
+ if (result == null) result = caseYEmbeddable(vmSearchPanel);
+ if (result == null) result = caseYEditable(vmSearchPanel);
+ if (result == null) result = caseYEnable(vmSearchPanel);
+ if (result == null) result = caseYElement(vmSearchPanel);
+ if (result == null) result = caseYCssAble(vmSearchPanel);
+ if (result == null) result = caseYVisibleable(vmSearchPanel);
+ if (result == null) result = caseYAuthorizationable(vmSearchPanel);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case VaadinMobilePackage.VM_NAVIGATION_ROOT: {
+ VMNavigationRoot vmNavigationRoot = (VMNavigationRoot)theEObject;
+ T result = caseVMNavigationRoot(vmNavigationRoot);
+ if (result == null) result = caseYLayout(vmNavigationRoot);
+ if (result == null) result = caseVMNavigationHandler(vmNavigationRoot);
+ if (result == null) result = caseYEmbeddable(vmNavigationRoot);
+ if (result == null) result = caseYEditable(vmNavigationRoot);
+ if (result == null) result = caseYEnable(vmNavigationRoot);
+ if (result == null) result = caseYElement(vmNavigationRoot);
+ if (result == null) result = caseYCssAble(vmNavigationRoot);
+ if (result == null) result = caseYVisibleable(vmNavigationRoot);
+ if (result == null) result = caseYAuthorizationable(vmNavigationRoot);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case VaadinMobilePackage.VM_NAVIGATION_BAR_BUTTON: {
+ VMNavigationBarButton vmNavigationBarButton = (VMNavigationBarButton)theEObject;
+ T result = caseVMNavigationBarButton(vmNavigationBarButton);
+ if (result == null) result = caseYAction(vmNavigationBarButton);
+ if (result == null) result = caseYEditable(vmNavigationBarButton);
+ if (result == null) result = caseYEmbeddable(vmNavigationBarButton);
+ if (result == null) result = caseYEnable(vmNavigationBarButton);
+ if (result == null) result = caseYElement(vmNavigationBarButton);
+ if (result == null) result = caseYCssAble(vmNavigationBarButton);
+ if (result == null) result = caseYVisibleable(vmNavigationBarButton);
+ if (result == null) result = caseYAuthorizationable(vmNavigationBarButton);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Horizontal Button Group</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>VM Horizontal Button Group</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMHorizontalButtonGroup(VMHorizontalButtonGroup object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Switch</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>VM Switch</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMSwitch(VMSwitch object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Vertical Component Group</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>VM Vertical Component Group</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMVerticalComponentGroup(VMVerticalComponentGroup object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Tab 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>VM Tab Sheet</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMTabSheet(VMTabSheet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Tab</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>VM Tab</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMTab(VMTab object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Navigation Page</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>VM Navigation Page</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMNavigationPage(VMNavigationPage object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Navigation Page Cell Style</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>VM Navigation Page Cell Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMNavigationPageCellStyle(VMNavigationPageCellStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Navigation Button</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>VM Navigation Button</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMNavigationButton(VMNavigationButton object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Navigation Command</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>VM Navigation Command</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMNavigationCommand(VMNavigationCommand object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Navigation Handler</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>VM Navigation Handler</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMNavigationHandler(VMNavigationHandler object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Search Panel</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>VM Search Panel</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMSearchPanel(VMSearchPanel object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Navigation Root</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>VM Navigation Root</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMNavigationRoot(VMNavigationRoot object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VM Navigation Bar Button</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>VM Navigation Bar Button</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVMNavigationBarButton(VMNavigationBarButton object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YElement</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>YElement</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYElement(YElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YCss Able</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>YCss Able</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYCssAble(YCssAble object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YVisibleable</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>YVisibleable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYVisibleable(YVisibleable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YAuthorizationable</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>YAuthorizationable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYAuthorizationable(YAuthorizationable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YEmbeddable</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>YEmbeddable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYEmbeddable(YEmbeddable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YLayout</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>YLayout</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYLayout(YLayout object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YFocusable</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>YFocusable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYFocusable(YFocusable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YEditable</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>YEditable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYEditable(YEditable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YEnable</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>YEnable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYEnable(YEnable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YField</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>YField</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYField(YField object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YAction</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>YAction</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYAction(YAction object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YCommand</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>YCommand</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYCommand(YCommand object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YSpacingable</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>YSpacingable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYSpacingable(YSpacingable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>YMarginable</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>YMarginable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseYMarginable(YMarginable 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;
+ }
+
+} //VaadinMobileSwitch
diff --git a/org.eclipse.osbp.mobile.vaadin.ecview.model/text/description.txt b/org.eclipse.osbp.mobile.vaadin.ecview.model/text/description.txt
new file mode 100644
index 0000000..cfc577c
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.ecview.model/text/description.txt
@@ -0,0 +1,69 @@
+Model Vaadinmobile
+
+This model description is not a real EMF artifact. It was generated by the
+org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's
+code generator can be extended.
+This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+
+Package model <http://lunifera.org/ecview/v1/vaadin/mobile>
+
+ Class VMHorizontalButtonGroup -> YLayout
+
+ Class VMSwitch -> YField
+ Reference datadescription : YDatadescription
+ Attribute value : EBoolean
+
+ Class VMVerticalComponentGroup -> YLayout
+
+ Class VMTabSheet -> YEmbeddable
+ Reference tabs : VMTab<<0..*>>
+
+ Class VMTab -> YElement, YCssAble, VMNavigationHandler
+ Reference parent : VMTabSheet<<1..1>>
+ Reference embeddable : YEmbeddable<<1..1>>
+ Reference datadescription : YDatadescription
+ Operation getView() : YView
+
+ Class VMNavigationPage -> YLayout, VMNavigationHandler
+ Attribute type : EJavaClass
+ Attribute emfNsURI : EString
+ Attribute typeQualifiedName : EString
+ Attribute value : EJavaObject
+ Reference barActions : VMNavigationBarButton<<0..*>>
+ Attribute navigateBack : EJavaObject
+ Attribute onNavigateBack : ELong
+ Reference datadescription : YDatadescription
+ Reference cellStyles : VMNavigationPageCellStyle<<0..*>>
+ Operation createValueEndpoint() : YECViewModelValueBindingEndpoint
+
+ Class VMNavigationPageCellStyle
+ Reference target : YEmbeddable<<1..1>>
+ Attribute alignment : YAlignment
+
+ Class VMNavigationButton -> YAction
+ Reference page : VMNavigationPage
+ Reference datadescription : YDatadescription
+ Attribute lastClickTime : ELong
+ Operation getView() : YView
+
+ Class VMNavigationCommand -> YCommand
+ Reference navigationHandler : VMNavigationHandler
+ Reference targetPage : VMNavigationPage
+ Attribute value : EJavaObject
+ Operation createNavigationValueEndpoint() : YECViewModelValueBindingEndpoint
+
+ Class VMNavigationHandler -> YElement
+
+ Class VMSearchPanel -> YLayout, YSpacingable, YMarginable
+ Attribute type : EJavaClass
+ Attribute emfNsURI : EString
+ Attribute typeQualifiedName : EString
+ Attribute applyFilter : EJavaObject
+ Attribute filter : EJavaObject
+
+ Class VMNavigationRoot -> YLayout, VMNavigationHandler
+
+ Class VMNavigationBarButton -> YAction, YVisibleable, YEditable, YEnable
+ Reference datadescription : YDatadescription
+ Attribute lastClickTime : ELong
+ Operation getView() : YView
diff --git a/org.eclipse.osbp.mobile.vaadin.feature.ecview/.project b/org.eclipse.osbp.mobile.vaadin.feature.ecview/.project
new file mode 100644
index 0000000..e631a6e
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.feature.ecview/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.osbp.mobile.vaadin.feature.ecview</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.FeatureBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.sonarlint.eclipse.core.sonarlintBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ <nature>org.eclipse.pde.FeatureNature</nature>
+ </natures>
+</projectDescription>
diff --git a/org.eclipse.osbp.mobile.vaadin.feature.ecview/LICENSE.txt b/org.eclipse.osbp.mobile.vaadin.feature.ecview/LICENSE.txt
new file mode 100644
index 0000000..ff42ad4
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.feature.ecview/LICENSE.txt
@@ -0,0 +1,161 @@
+Eclipse Public License -v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION
+OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+
+b) in the case of each subsequent Contributor:
+
+i) changes to the Program, and
+
+ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and are distributed by that particular Contributor.
+A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone
+acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate
+modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not
+derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of
+its Contribution alone or when combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute
+and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code
+form.
+
+b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the
+Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the
+combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such
+addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not
+apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no
+assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity
+based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property
+rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the
+Program, it is Recipient's responsibility to acquire that license before distributing the Program.
+
+d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to
+grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+a) it complies with the terms and conditions of this Agreement; and
+
+b) its license agreement:
+
+i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including
+warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and
+fitness for a particular purpose;
+
+ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;
+
+iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any
+other party; and
+
+iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it
+in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+a) it must be made available under this Agreement; and
+
+b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and
+the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes
+the Program in a commercial product offering should do so in a manner which does not create potential liability for
+other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions
+brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such
+Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual
+property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the
+Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may
+ participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is
+then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties
+related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone.
+Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to
+those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result,
+the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR
+CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE,
+NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for
+determining the appropriateness of using and distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance
+with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS),
+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such
+provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such
+Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such
+litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such
+noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution
+of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses
+ granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement
+is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish
+new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the
+right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the
+Agreement will be given a distinguishing version number. The Program (including Contributions) may always be
+distributed subject to the version of the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the
+new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States
+of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause
+of action arose. Each party waives its rights to a jury trial in any resulting litigation. \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.feature.ecview/build.properties b/org.eclipse.osbp.mobile.vaadin.feature.ecview/build.properties
new file mode 100644
index 0000000..d2ce2f7
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.feature.ecview/build.properties
@@ -0,0 +1,8 @@
+bin.includes = feature.xml,\
+ feature.properties,\
+ LICENSE.txt,\
+ license-epl-v10.html,\
+ license.html
+src.includes = LICENSE.txt,\
+ license-epl-v10.html,\
+ license.html
diff --git a/org.eclipse.osbp.mobile.vaadin.feature.ecview/epl-v10.html b/org.eclipse.osbp.mobile.vaadin.feature.ecview/epl-v10.html
new file mode 100644
index 0000000..b398acc
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.feature.ecview/epl-v10.html
@@ -0,0 +1,259 @@
+<!--?xml version="1.0" encoding="ISO-8859-1" ?-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Eclipse Public License - Version 1.0</title>
+<style type="text/css">
+ body {
+ size: 8.5in 11.0in;
+ margin: 0.25in 0.5in 0.25in 0.5in;
+ tab-interval: 0.5in;
+ }
+ p {
+ margin-left: auto;
+ margin-top: 0.5em;
+ margin-bottom: 0.5em;
+ }
+ p.list {
+ margin-left: 0.5in;
+ margin-top: 0.05em;
+ margin-bottom: 0.05em;
+ }
+ </style>
+
+</head>
+
+<body lang="EN-US">
+
+<h2>Eclipse Public License - v 1.0</h2>
+
+<p>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
+PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR
+DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS
+AGREEMENT.</p>
+
+<p><b>1. DEFINITIONS</b></p>
+
+<p>"Contribution" means:</p>
+
+<p class="list">a) in the case of the initial Contributor, the initial
+code and documentation distributed under this Agreement, and</p>
+<p class="list">b) in the case of each subsequent Contributor:</p>
+<p class="list">i) changes to the Program, and</p>
+<p class="list">ii) additions to the Program;</p>
+<p class="list">where such changes and/or additions to the Program
+originate from and are distributed by that particular Contributor. A
+Contribution 'originates' from a Contributor if it was added to the
+Program by such Contributor itself or anyone acting on such
+Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in
+conjunction with the Program under their own license agreement, and (ii)
+are not derivative works of the Program.</p>
+
+<p>"Contributor" means any person or entity that distributes
+the Program.</p>
+
+<p>"Licensed Patents" mean patent claims licensable by a
+Contributor which are necessarily infringed by the use or sale of its
+Contribution alone or when combined with the Program.</p>
+
+<p>"Program" means the Contributions distributed in accordance
+with this Agreement.</p>
+
+<p>"Recipient" means anyone who receives the Program under
+this Agreement, including all Contributors.</p>
+
+<p><b>2. GRANT OF RIGHTS</b></p>
+
+<p class="list">a) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works
+of, publicly display, publicly perform, distribute and sublicense the
+Contribution of such Contributor, if any, and such derivative works, in
+source code and object code form.</p>
+
+<p class="list">b) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell,
+offer to sell, import and otherwise transfer the Contribution of such
+Contributor, if any, in source code and object code form. This patent
+license shall apply to the combination of the Contribution and the
+Program if, at the time the Contribution is added by the Contributor,
+such addition of the Contribution causes such combination to be covered
+by the Licensed Patents. The patent license shall not apply to any other
+combinations which include the Contribution. No hardware per se is
+licensed hereunder.</p>
+
+<p class="list">c) Recipient understands that although each Contributor
+grants the licenses to its Contributions set forth herein, no assurances
+are provided by any Contributor that the Program does not infringe the
+patent or other intellectual property rights of any other entity. Each
+Contributor disclaims any liability to Recipient for claims brought by
+any other entity based on infringement of intellectual property rights
+or otherwise. As a condition to exercising the rights and licenses
+granted hereunder, each Recipient hereby assumes sole responsibility to
+secure any other intellectual property rights needed, if any. For
+example, if a third party patent license is required to allow Recipient
+to distribute the Program, it is Recipient's responsibility to acquire
+that license before distributing the Program.</p>
+
+<p class="list">d) Each Contributor represents that to its knowledge it
+has sufficient copyright rights in its Contribution, if any, to grant
+the copyright license set forth in this Agreement.</p>
+
+<p><b>3. REQUIREMENTS</b></p>
+
+<p>A Contributor may choose to distribute the Program in object code
+form under its own license agreement, provided that:</p>
+
+<p class="list">a) it complies with the terms and conditions of this
+Agreement; and</p>
+
+<p class="list">b) its license agreement:</p>
+
+<p class="list">i) effectively disclaims on behalf of all Contributors
+all warranties and conditions, express and implied, including warranties
+or conditions of title and non-infringement, and implied warranties or
+conditions of merchantability and fitness for a particular purpose;</p>
+
+<p class="list">ii) effectively excludes on behalf of all Contributors
+all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;</p>
+
+<p class="list">iii) states that any provisions which differ from this
+Agreement are offered by that Contributor alone and not by any other
+party; and</p>
+
+<p class="list">iv) states that source code for the Program is available
+from such Contributor, and informs licensees how to obtain it in a
+reasonable manner on or through a medium customarily used for software
+exchange.</p>
+
+<p>When the Program is made available in source code form:</p>
+
+<p class="list">a) it must be made available under this Agreement; and</p>
+
+<p class="list">b) a copy of this Agreement must be included with each
+copy of the Program.</p>
+
+<p>Contributors may not remove or alter any copyright notices contained
+within the Program.</p>
+
+<p>Each Contributor must identify itself as the originator of its
+Contribution, if any, in a manner that reasonably allows subsequent
+Recipients to identify the originator of the Contribution.</p>
+
+<p><b>4. COMMERCIAL DISTRIBUTION</b></p>
+
+<p>Commercial distributors of software may accept certain
+responsibilities with respect to end users, business partners and the
+like. While this license is intended to facilitate the commercial use of
+the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create
+potential liability for other Contributors. Therefore, if a Contributor
+includes the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and
+indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses")
+arising from claims, lawsuits and other legal actions brought by a third
+party against the Indemnified Contributor to the extent caused by the
+acts or omissions of such Commercial Contributor in connection with its
+distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In
+order to qualify, an Indemnified Contributor must: a) promptly notify
+the Commercial Contributor in writing of such claim, and b) allow the
+Commercial Contributor to control, and cooperate with the Commercial
+Contributor in, the defense and any related settlement negotiations. The
+Indemnified Contributor may participate in any such claim at its own
+expense.</p>
+
+<p>For example, a Contributor might include the Program in a commercial
+product offering, Product X. That Contributor is then a Commercial
+Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance
+claims and warranties are such Commercial Contributor's responsibility
+alone. Under this section, the Commercial Contributor would have to
+defend claims against the other Contributors related to those
+performance claims and warranties, and if a court requires any other
+Contributor to pay any damages as a result, the Commercial Contributor
+must pay those damages.</p>
+
+<p><b>5. NO WARRANTY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
+PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION,
+ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
+OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and
+distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to
+the risks and costs of program errors, compliance with applicable laws,
+damage to or loss of data, programs or equipment, and unavailability or
+interruption of operations.</p>
+
+<p><b>6. DISCLAIMER OF LIABILITY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT
+NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
+WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
+DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p>
+
+<p><b>7. GENERAL</b></p>
+
+<p>If any provision of this Agreement is invalid or unenforceable under
+applicable law, it shall not affect the validity or enforceability of
+the remainder of the terms of this Agreement, and without further action
+by the parties hereto, such provision shall be reformed to the minimum
+extent necessary to make such provision valid and enforceable.</p>
+
+<p>If Recipient institutes patent litigation against any entity
+(including a cross-claim or counterclaim in a lawsuit) alleging that the
+Program itself (excluding combinations of the Program with other
+software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the
+date such litigation is filed.</p>
+
+<p>All Recipient's rights under this Agreement shall terminate if it
+fails to comply with any of the material terms or conditions of this
+Agreement and does not cure such failure in a reasonable period of time
+after becoming aware of such noncompliance. If all Recipient's rights
+under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive.</p>
+
+<p>Everyone is permitted to copy and distribute copies of this
+Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The
+Agreement Steward reserves the right to publish new versions (including
+revisions) of this Agreement from time to time. No one other than the
+Agreement Steward has the right to modify this Agreement. The Eclipse
+Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a
+suitable separate entity. Each new version of the Agreement will be
+given a distinguishing version number. The Program (including
+Contributions) may always be distributed subject to the version of the
+Agreement under which it was received. In addition, after a new version
+of the Agreement is published, Contributor may elect to distribute the
+Program (including its Contributions) under the new version. Except as
+expressly stated in Sections 2(a) and 2(b) above, Recipient receives no
+rights or licenses to the intellectual property of any Contributor under
+this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this
+Agreement are reserved.</p>
+
+<p>This Agreement is governed by the laws of the State of New York and
+the intellectual property laws of the United States of America. No party
+to this Agreement will bring a legal action under this Agreement more
+than one year after the cause of action arose. Each party waives its
+rights to a jury trial in any resulting litigation.</p>
+
+
+
+</body></html> \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.feature.ecview/feature.properties b/org.eclipse.osbp.mobile.vaadin.feature.ecview/feature.properties
new file mode 100644
index 0000000..0712c78
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.feature.ecview/feature.properties
@@ -0,0 +1,169 @@
+###############################################################################
+# Copyright (c) 2012, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
+# 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:
+# Florian Pirchner - initial API and implementation
+###############################################################################
+# feature.properties
+# contains externalized strings for feature.xml
+# "%foo" in feature.xml corresponds to the key "foo" in this file
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# This file should be translated.
+
+# "featureName" property - name of the feature
+featureName = Vaadin Mobile Touchkit Extensions for ECView
+
+# "providerName" property - name of the company that provides the feature
+providerName=Eclipse OSBP
+
+# "description" property - description of the feature
+description= Vaadin Mobile Touchkit Extensions for ECView project. Attention: Read the copyright notice of CVAL3 license.
+
+# "updateSiteName" property - label for the update site
+updateSiteName=
+
+# "copyright" property - text of the "Feature Update Copyright"
+copyright=\
+Copyright (c) 2012, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany) \n\
+All rights reserved. This program and the accompanying materials\n\
+are made available under the terms of the Eclipse Public License v1.0\n\
+which accompanies this distribution, and is available at\n\
+http://www.eclipse.org/legal/epl-v10.html\n\
+\n
+################ end of copyright property ####################################
+
+# "licenseURL" property - URL of the "Feature License"
+# do not translate value - just change to point to a locale-specific HTML page
+licenseURL=license.html
+
+# "license" property - text of the "Feature Update License"
+# should be plain text version of license agreement pointed to be "licenseURL"
+license=\
+Eclipse Foundation Software User Agreement\n\
+February 1, 2011\n\
+\n\
+Usage Of Content\n\
+\n\
+THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
+OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
+USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
+AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
+NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
+AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
+AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
+OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
+TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
+OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
+BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
+\n\
+Applicable Licenses\n\
+\n\
+Unless otherwise indicated, all Content made available by the\n\
+Eclipse Foundation is provided to you under the terms and conditions of\n\
+the Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is\n\
+provided with this Content and is also available at http://www.eclipse.org/legal/epl-v10.html.\n\
+For purposes of the EPL, "Program" will mean the Content.\n\
+\n\
+Content includes, but is not limited to, source code, object code,\n\
+documentation and other files maintained in the Eclipse Foundation source code\n\
+repository ("Repository") in software modules ("Modules") and made available\n\
+as downloadable archives ("Downloads").\n\
+\n\
+ - Content may be structured and packaged into modules to facilitate delivering,\n\
+ extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"),\n\
+ plug-in fragments ("Fragments"), and features ("Features").\n\
+ - Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java(TM) ARchive)\n\
+ in a directory named "plugins".\n\
+ - A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.\n\
+ Each Feature may be packaged as a sub-directory in a directory named "features".\n\
+ Within a Feature, files named "feature.xml" may contain a list of the names and version\n\
+ numbers of the Plug-ins and/or Fragments associated with that Feature.\n\
+ - Features may also include other Features ("Included Features"). Within a Feature, files\n\
+ named "feature.xml" may contain a list of the names and version numbers of Included Features.\n\
+\n\
+The terms and conditions governing Plug-ins and Fragments should be\n\
+contained in files named "about.html" ("Abouts"). The terms and\n\
+conditions governing Features and Included Features should be contained\n\
+in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
+Licenses may be located in any directory of a Download or Module\n\
+including, but not limited to the following locations:\n\
+\n\
+ - The top-level (root) directory\n\
+ - Plug-in and Fragment directories\n\
+ - Inside Plug-ins and Fragments packaged as JARs\n\
+ - Sub-directories of the directory named "src" of certain Plug-ins\n\
+ - Feature directories\n\
+\n\
+Note: if a Feature made available by the Eclipse Foundation is installed using the\n\
+Provisioning Technology (as defined below), you must agree to a license ("Feature \n\
+Update License") during the installation process. If the Feature contains\n\
+Included Features, the Feature Update License should either provide you\n\
+with the terms and conditions governing the Included Features or inform\n\
+you where you can locate them. Feature Update Licenses may be found in\n\
+the "license" property of files named "feature.properties" found within a Feature.\n\
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the\n\
+terms and conditions (or references to such terms and conditions) that\n\
+govern your use of the associated Content in that directory.\n\
+\n\
+THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER\n\
+TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
+SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
+\n\
+ - Eclipse Distribution License Version 1.0 (available at http://www.eclipse.org/licenses/edl-v1.0.html)\n\
+ - Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)\n\
+ - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
+ - Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)\n\
+ - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
+ - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
+\n\
+IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
+TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License\n\
+is provided, please contact the Eclipse Foundation to determine what terms and conditions\n\
+govern that particular Content.\n\
+\n\
+\n\Use of Provisioning Technology\n\
+\n\
+The Eclipse Foundation makes available provisioning software, examples of which include,\n\
+but are not limited to, p2 and the Eclipse Update Manager ("Provisioning Technology") for\n\
+the purpose of allowing users to install software, documentation, information and/or\n\
+other materials (collectively "Installable Software"). This capability is provided with\n\
+the intent of allowing such users to install, extend and update Eclipse-based products.\n\
+Information about packaging Installable Software is available at\n\
+http://eclipse.org/equinox/p2/repository_packaging.html ("Specification").\n\
+\n\
+You may use Provisioning Technology to allow other parties to install Installable Software.\n\
+You shall be responsible for enabling the applicable license agreements relating to the\n\
+Installable Software to be presented to, and accepted by, the users of the Provisioning Technology\n\
+in accordance with the Specification. By using Provisioning Technology in such a manner and\n\
+making it available in accordance with the Specification, you further acknowledge your\n\
+agreement to, and the acquisition of all necessary rights to permit the following:\n\
+\n\
+ 1. A series of actions may occur ("Provisioning Process") in which a user may execute\n\
+ the Provisioning Technology on a machine ("Target Machine") with the intent of installing,\n\
+ extending or updating the functionality of an Eclipse-based product.\n\
+ 2. During the Provisioning Process, the Provisioning Technology may cause third party\n\
+ Installable Software or a portion thereof to be accessed and copied to the Target Machine.\n\
+ 3. Pursuant to the Specification, you will provide to the user the terms and conditions that\n\
+ govern the use of the Installable Software ("Installable Software Agreement") and such\n\
+ Installable Software Agreement shall be accessed from the Target Machine in accordance\n\
+ with the Specification. Such Installable Software Agreement must inform the user of the\n\
+ terms and conditions that govern the Installable Software and must solicit acceptance by\n\
+ the end user in the manner prescribed in such Installable Software Agreement. Upon such\n\
+ indication of agreement by the user, the provisioning Technology will complete installation\n\
+ of the Installable Software.\n\
+\n\
+Cryptography\n\
+\n\
+Content may contain encryption software. The country in which you are\n\
+currently may have restrictions on the import, possession, and use,\n\
+and/or re-export to another country, of encryption software. BEFORE\n\
+using any encryption software, please check the country's laws,\n\
+regulations and policies concerning the import, possession, or use, and\n\
+re-export of encryption software, to see if this is permitted.\n\
+\n\
+Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.\n
+########### end of license property ##########################################
diff --git a/org.eclipse.osbp.mobile.vaadin.feature.ecview/feature.xml b/org.eclipse.osbp.mobile.vaadin.feature.ecview/feature.xml
new file mode 100644
index 0000000..d38a826
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.feature.ecview/feature.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--#======================================================================= -->
+<!--# Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany) -->
+<!--# 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: -->
+<!--# Christophe Loetz (Loetz GmbH&Co.KG) - initial API and implementation -->
+<!--#======================================================================= -->
+<feature
+ id="org.eclipse.osbp.mobile.vaadin.feature.ecview"
+ label="%featureName"
+ version="0.9.0.qualifier"
+ provider-name="%providerName">
+
+ <description>
+ %description
+ </description>
+
+ <copyright>
+ %copyright
+ </copyright>
+
+ <license url="%licenseURL">
+ %license
+ </license>
+
+ <plugin
+ id="org.eclipse.osbp.mobile.vaadin.ecview.editparts"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.osbp.mobile.vaadin.ecview.model"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.osbp.mobile.vaadin.ecview.api"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+</feature>
diff --git a/org.eclipse.osbp.mobile.vaadin.feature.ecview/license-epl-v10.html b/org.eclipse.osbp.mobile.vaadin.feature.ecview/license-epl-v10.html
new file mode 100644
index 0000000..b398acc
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.feature.ecview/license-epl-v10.html
@@ -0,0 +1,259 @@
+<!--?xml version="1.0" encoding="ISO-8859-1" ?-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Eclipse Public License - Version 1.0</title>
+<style type="text/css">
+ body {
+ size: 8.5in 11.0in;
+ margin: 0.25in 0.5in 0.25in 0.5in;
+ tab-interval: 0.5in;
+ }
+ p {
+ margin-left: auto;
+ margin-top: 0.5em;
+ margin-bottom: 0.5em;
+ }
+ p.list {
+ margin-left: 0.5in;
+ margin-top: 0.05em;
+ margin-bottom: 0.05em;
+ }
+ </style>
+
+</head>
+
+<body lang="EN-US">
+
+<h2>Eclipse Public License - v 1.0</h2>
+
+<p>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
+PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR
+DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS
+AGREEMENT.</p>
+
+<p><b>1. DEFINITIONS</b></p>
+
+<p>"Contribution" means:</p>
+
+<p class="list">a) in the case of the initial Contributor, the initial
+code and documentation distributed under this Agreement, and</p>
+<p class="list">b) in the case of each subsequent Contributor:</p>
+<p class="list">i) changes to the Program, and</p>
+<p class="list">ii) additions to the Program;</p>
+<p class="list">where such changes and/or additions to the Program
+originate from and are distributed by that particular Contributor. A
+Contribution 'originates' from a Contributor if it was added to the
+Program by such Contributor itself or anyone acting on such
+Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in
+conjunction with the Program under their own license agreement, and (ii)
+are not derivative works of the Program.</p>
+
+<p>"Contributor" means any person or entity that distributes
+the Program.</p>
+
+<p>"Licensed Patents" mean patent claims licensable by a
+Contributor which are necessarily infringed by the use or sale of its
+Contribution alone or when combined with the Program.</p>
+
+<p>"Program" means the Contributions distributed in accordance
+with this Agreement.</p>
+
+<p>"Recipient" means anyone who receives the Program under
+this Agreement, including all Contributors.</p>
+
+<p><b>2. GRANT OF RIGHTS</b></p>
+
+<p class="list">a) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free copyright license to reproduce, prepare derivative works
+of, publicly display, publicly perform, distribute and sublicense the
+Contribution of such Contributor, if any, and such derivative works, in
+source code and object code form.</p>
+
+<p class="list">b) Subject to the terms of this Agreement, each
+Contributor hereby grants Recipient a non-exclusive, worldwide,
+royalty-free patent license under Licensed Patents to make, use, sell,
+offer to sell, import and otherwise transfer the Contribution of such
+Contributor, if any, in source code and object code form. This patent
+license shall apply to the combination of the Contribution and the
+Program if, at the time the Contribution is added by the Contributor,
+such addition of the Contribution causes such combination to be covered
+by the Licensed Patents. The patent license shall not apply to any other
+combinations which include the Contribution. No hardware per se is
+licensed hereunder.</p>
+
+<p class="list">c) Recipient understands that although each Contributor
+grants the licenses to its Contributions set forth herein, no assurances
+are provided by any Contributor that the Program does not infringe the
+patent or other intellectual property rights of any other entity. Each
+Contributor disclaims any liability to Recipient for claims brought by
+any other entity based on infringement of intellectual property rights
+or otherwise. As a condition to exercising the rights and licenses
+granted hereunder, each Recipient hereby assumes sole responsibility to
+secure any other intellectual property rights needed, if any. For
+example, if a third party patent license is required to allow Recipient
+to distribute the Program, it is Recipient's responsibility to acquire
+that license before distributing the Program.</p>
+
+<p class="list">d) Each Contributor represents that to its knowledge it
+has sufficient copyright rights in its Contribution, if any, to grant
+the copyright license set forth in this Agreement.</p>
+
+<p><b>3. REQUIREMENTS</b></p>
+
+<p>A Contributor may choose to distribute the Program in object code
+form under its own license agreement, provided that:</p>
+
+<p class="list">a) it complies with the terms and conditions of this
+Agreement; and</p>
+
+<p class="list">b) its license agreement:</p>
+
+<p class="list">i) effectively disclaims on behalf of all Contributors
+all warranties and conditions, express and implied, including warranties
+or conditions of title and non-infringement, and implied warranties or
+conditions of merchantability and fitness for a particular purpose;</p>
+
+<p class="list">ii) effectively excludes on behalf of all Contributors
+all liability for damages, including direct, indirect, special,
+incidental and consequential damages, such as lost profits;</p>
+
+<p class="list">iii) states that any provisions which differ from this
+Agreement are offered by that Contributor alone and not by any other
+party; and</p>
+
+<p class="list">iv) states that source code for the Program is available
+from such Contributor, and informs licensees how to obtain it in a
+reasonable manner on or through a medium customarily used for software
+exchange.</p>
+
+<p>When the Program is made available in source code form:</p>
+
+<p class="list">a) it must be made available under this Agreement; and</p>
+
+<p class="list">b) a copy of this Agreement must be included with each
+copy of the Program.</p>
+
+<p>Contributors may not remove or alter any copyright notices contained
+within the Program.</p>
+
+<p>Each Contributor must identify itself as the originator of its
+Contribution, if any, in a manner that reasonably allows subsequent
+Recipients to identify the originator of the Contribution.</p>
+
+<p><b>4. COMMERCIAL DISTRIBUTION</b></p>
+
+<p>Commercial distributors of software may accept certain
+responsibilities with respect to end users, business partners and the
+like. While this license is intended to facilitate the commercial use of
+the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create
+potential liability for other Contributors. Therefore, if a Contributor
+includes the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and
+indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses")
+arising from claims, lawsuits and other legal actions brought by a third
+party against the Indemnified Contributor to the extent caused by the
+acts or omissions of such Commercial Contributor in connection with its
+distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In
+order to qualify, an Indemnified Contributor must: a) promptly notify
+the Commercial Contributor in writing of such claim, and b) allow the
+Commercial Contributor to control, and cooperate with the Commercial
+Contributor in, the defense and any related settlement negotiations. The
+Indemnified Contributor may participate in any such claim at its own
+expense.</p>
+
+<p>For example, a Contributor might include the Program in a commercial
+product offering, Product X. That Contributor is then a Commercial
+Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance
+claims and warranties are such Commercial Contributor's responsibility
+alone. Under this section, the Commercial Contributor would have to
+defend claims against the other Contributors related to those
+performance claims and warranties, and if a court requires any other
+Contributor to pay any damages as a result, the Commercial Contributor
+must pay those damages.</p>
+
+<p><b>5. NO WARRANTY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
+PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION,
+ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
+OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and
+distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to
+the risks and costs of program errors, compliance with applicable laws,
+damage to or loss of data, programs or equipment, and unavailability or
+interruption of operations.</p>
+
+<p><b>6. DISCLAIMER OF LIABILITY</b></p>
+
+<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT
+NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
+WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
+DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p>
+
+<p><b>7. GENERAL</b></p>
+
+<p>If any provision of this Agreement is invalid or unenforceable under
+applicable law, it shall not affect the validity or enforceability of
+the remainder of the terms of this Agreement, and without further action
+by the parties hereto, such provision shall be reformed to the minimum
+extent necessary to make such provision valid and enforceable.</p>
+
+<p>If Recipient institutes patent litigation against any entity
+(including a cross-claim or counterclaim in a lawsuit) alleging that the
+Program itself (excluding combinations of the Program with other
+software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the
+date such litigation is filed.</p>
+
+<p>All Recipient's rights under this Agreement shall terminate if it
+fails to comply with any of the material terms or conditions of this
+Agreement and does not cure such failure in a reasonable period of time
+after becoming aware of such noncompliance. If all Recipient's rights
+under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive.</p>
+
+<p>Everyone is permitted to copy and distribute copies of this
+Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The
+Agreement Steward reserves the right to publish new versions (including
+revisions) of this Agreement from time to time. No one other than the
+Agreement Steward has the right to modify this Agreement. The Eclipse
+Foundation is the initial Agreement Steward. The Eclipse Foundation may
+assign the responsibility to serve as the Agreement Steward to a
+suitable separate entity. Each new version of the Agreement will be
+given a distinguishing version number. The Program (including
+Contributions) may always be distributed subject to the version of the
+Agreement under which it was received. In addition, after a new version
+of the Agreement is published, Contributor may elect to distribute the
+Program (including its Contributions) under the new version. Except as
+expressly stated in Sections 2(a) and 2(b) above, Recipient receives no
+rights or licenses to the intellectual property of any Contributor under
+this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this
+Agreement are reserved.</p>
+
+<p>This Agreement is governed by the laws of the State of New York and
+the intellectual property laws of the United States of America. No party
+to this Agreement will bring a legal action under this Agreement more
+than one year after the cause of action arose. Each party waives its
+rights to a jury trial in any resulting litigation.</p>
+
+
+
+</body></html> \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.feature.ecview/license.html b/org.eclipse.osbp.mobile.vaadin.feature.ecview/license.html
new file mode 100644
index 0000000..67ec978
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.feature.ecview/license.html
@@ -0,0 +1,1522 @@
+<!--?xml version="1.0" encoding="ISO-8859-1" ?-->
+<!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>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<html xmlns:v="urn:schemas-microsoft-com:vml"
+xmlns:o="urn:schemas-microsoft-com:office:office"
+xmlns:w="urn:schemas-microsoft-com:office:word"
+xmlns:m="http://schemas.microsoft.com/office/2004/12/omml"
+xmlns:mv="http://macVmlSchemaUri" xmlns="http://www.w3.org/TR/REC-html40">
+
+<head>
+<meta name=Titel content="">
+<meta name=Stichwörter content="">
+<meta http-equiv=Content-Type content="text/html; charset=macintosh">
+<meta name=ProgId content=Word.Document>
+<meta name=Generator content="Microsoft Word 14">
+<meta name=Originator content="Microsoft Word 14">
+<link rel=File-List href="cval3-license-Dateien/filelist.xml">
+<style>
+<!--
+ /* Font Definitions */
+@font-face
+ {font-family:"\FF2D\FF33 \660E\671D";
+ mso-font-charset:78;
+ mso-generic-font-family:auto;
+ mso-font-pitch:variable;
+ mso-font-signature:1 134676480 16 0 131072 0;}
+@font-face
+ {font-family:"\FF2D\FF33 \660E\671D";
+ mso-font-charset:78;
+ mso-generic-font-family:auto;
+ mso-font-pitch:variable;
+ mso-font-signature:1 134676480 16 0 131072 0;}
+@font-face
+ {font-family:Cambria;
+ panose-1:2 4 5 3 5 4 6 3 2 4;
+ mso-font-charset:0;
+ mso-generic-font-family:auto;
+ mso-font-pitch:variable;
+ mso-font-signature:-536870145 1073743103 0 0 415 0;}
+@font-face
+ {font-family:Monaco;
+ panose-1:2 0 5 0 0 0 0 0 0 0;
+ mso-font-charset:0;
+ mso-generic-font-family:auto;
+ mso-font-pitch:variable;
+ mso-font-signature:3 0 0 0 1 0;}
+ /* Style Definitions */
+p.MsoNormal, li.MsoNormal, div.MsoNormal
+ {mso-style-unhide:no;
+ mso-style-qformat:yes;
+ mso-style-parent:"";
+ margin:0cm;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ font-family:Cambria;
+ mso-ascii-font-family:Cambria;
+ mso-ascii-theme-font:minor-latin;
+ mso-fareast-font-family:"\FF2D\FF33 \660E\671D";
+ mso-fareast-theme-font:minor-fareast;
+ mso-hansi-font-family:Cambria;
+ mso-hansi-theme-font:minor-latin;
+ mso-bidi-font-family:"Times New Roman";
+ mso-bidi-theme-font:minor-bidi;}
+span.GramE
+ {mso-style-name:"";
+ mso-gram-e:yes;}
+.MsoChpDefault
+ {mso-style-type:export-only;
+ mso-default-props:yes;
+ font-family:Cambria;
+ mso-ascii-font-family:Cambria;
+ mso-ascii-theme-font:minor-latin;
+ mso-fareast-font-family:"\FF2D\FF33 \660E\671D";
+ mso-fareast-theme-font:minor-fareast;
+ mso-hansi-font-family:Cambria;
+ mso-hansi-theme-font:minor-latin;
+ mso-bidi-font-family:"Times New Roman";
+ mso-bidi-theme-font:minor-bidi;}
+@page WordSection1
+ {size:612.0pt 792.0pt;
+ margin:70.85pt 70.85pt 2.0cm 70.85pt;
+ mso-header-margin:36.0pt;
+ mso-footer-margin:36.0pt;
+ mso-paper-source:0;}
+div.WordSection1
+ {page:WordSection1;}
+-->
+</style>
+<!--[if gte mso 10]>
+<style>
+ /* Style Definitions */
+table.MsoNormalTable
+ {mso-style-name:"Normale Tabelle";
+ mso-tstyle-rowband-size:0;
+ mso-tstyle-colband-size:0;
+ mso-style-noshow:yes;
+ mso-style-priority:99;
+ mso-style-parent:"";
+ mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
+ mso-para-margin:0cm;
+ mso-para-margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ font-family:Cambria;
+ mso-ascii-font-family:Cambria;
+ mso-ascii-theme-font:minor-latin;
+ mso-hansi-font-family:Cambria;
+ mso-hansi-theme-font:minor-latin;}
+</style>
+<![endif]--><!--[if gte mso 9]><xml>
+ <o:shapedefaults v:ext="edit" spidmax="1026"/>
+</xml><![endif]--><!--[if gte mso 9]><xml>
+ <o:shapelayout v:ext="edit">
+ <o:idmap v:ext="edit" data="1"/>
+ </o:shapelayout></xml><![endif]-->
+</head>
+
+<body lang=DE style='tab-interval:35.4pt'>
+
+<div class=WordSection1>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Commercial <u><span style='color:black'>Vaadin</span></u>
+Add-On License version 3<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>NOTICE TO USER: PLEASE READ THIS LICENSE AGREEMENT
+CAREFULLY. BY<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>USING ALL OR ANY PART OF THE LICENSED SOFTWARE YOU
+ACCEPT ALL THE<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>TERMS AND CONDITIONS OF THIS AGREEMENT, INCLUDING,
+IN PARTICULAR THE<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>RESTRICTIONS ON: USE AND TRANSFERABILITY CONTAINED
+IN CLAUSE 2;<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>WARRANTY IN CLAUSE 6; LIABILITY IN CLAUSE 7. YOU
+ACCEPT THAT THIS<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>AGREEMENT IS ENFORCEABLE LIKE ANY WRITTEN
+NEGOTIATED AGREEMENT DULY<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>SIGNED BY YOU. IF YOU DO NOT AGREE ON ALL THE
+TERMS AND CONDITIONS OF<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>THIS AGREEMENT, STOP THE USE OF THE LICENSED
+SOFTWARE IMMEDIATELY.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>1. Definitions<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>In this Agreement, unless the context requires
+otherwise, the<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>following words and phrases shall have the
+following meanings:<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;Developer&quot; shall mean a software developer, tester, designer<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>or other person<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;<u><span style='color:black'>Vaadin</span></u> Framework&quot; shall mean
+the <u><span style='color:black'>Vaadin</span></u> user interface library<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>and web framework that help Developers
+in building rich <u><span style='color:black'>internet</span></u><o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>applications and that is available for
+download at the<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>vaadin.com <u><span style='color:black'>website</span></u>.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;Licensed Software&quot; shall mean an add-on software component,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>theme, tool or other software or
+resource that adds<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>functionality to <u><span
+style='color:black'>Vaadin</span></u> Framework or helps Developers in<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>developing <u><span style='color:black'>Vaadin</span></u>
+Framework based applications. Licensed<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>Software include, but are not limited
+to, user interface<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>components, data integration components,
+graphical themes<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>and development tools.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;Use Licensed Software&quot; shall mean either directly interacting<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>with, including without limitations
+using the user interface<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>of, running on workstation or
+installing, the Licensed Software<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>during Project or editing Project source
+code file that refers<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>to or depends on Licensed Software
+either directly or<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp;</span><span
+style="mso-spacerun:yes">&nbsp;</span>indirectly. Developer who edits source
+code that can not be<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>compiled and/or run without a copy of
+Licensed Software is<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>considered to Use Licensed Software. <span
+class=GramE>Interacting with a test</span><o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>server that runs Licensed Software as a
+part of automated test<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>suite is not consider as Use of Licensed
+Software, but the<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span><span class=GramE>maintainers of the
+mentioned test suite are considered to Use</span><o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>Licensed Software.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;Agreement&quot; shall mean this Commercial <u><span style='color:black'>Vaadin</span></u>
+Add-On License<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>version 3 agreement.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;License&quot; shall mean the right to Use Licensed Software<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>according to Agreement by one Developer
+and is identified by a<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>unique License Number.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;License Number&quot; shall mean a number that identifies one unique<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>License and is created by <u><span
+style='color:black'>Vaadin</span></u> <u><span style='color:black'>Ltd</span></u>.
+and sent to Licensee after<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>the payment of the license fee or
+Subscription fee.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;Intellectual Property Rights&quot; shall mean any and all patent,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>copyright, trademark, design right,
+petty patent, service mark,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>domain name or any other right or trade
+secret whether<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>registered or not.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;Licensee&quot; shall mean the entity that has purchased Licensed<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>Software or subscribed to a subscription
+that includes the right<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>to Use Licensed Software.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;<u><span style='color:black'>Licensor</span></u>&quot; shall mean <u><span
+style='color:black'>Vaadin</span></u> <u><span style='color:black'>Ltd</span></u>.
+or a third party licensing<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>Licensed Software under Agreement.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;Parties/Party&quot; shall mean Licensee and <u><span style='color:black'>Licensor</span></u>,
+or either of<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>them.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;Project&quot; shall mean Licensee's software development project<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>during which the participating
+Developers Use Licensed Software<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>and which aims to produce Project
+Result.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;Project Result&quot; shall mean the outcome of the Project.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;<u><span style='color:black'>Vaadin</span></u> Directory&quot; shall mean
+the central on-line repository for<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>add-on software components and tools at
+vaadin.com <u><span style='color:black'>website</span></u><o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>operated by <u><span style='color:black'>Vaadin</span></u>
+<u><span style='color:black'>Ltd</span></u>.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;Subscription&quot; shall mean a subscription offered by <u><span
+style='color:black'>Vaadin</span></u> <u><span style='color:black'>Ltd</span></u>.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>in which <u><span style='color:black'>Licensor</span></u>
+grants rights to Use Licensed Software<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>according to the terms of the
+subscription.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>*
+&quot;Major Version&quot;, &quot;Minor Version&quot; and &quot;Maintenance
+Version&quot; shall<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>mean parts of a version number X.Y.Z,
+where X is considered to be<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>Major Version, Y Minor Version and Z
+Maintenance version. For<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>example, in version 7.1.3 the Major
+Version is 7, Minor Version<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span><span
+style="mso-spacerun:yes">&nbsp; </span>1 and Maintenance Version 3.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>2. Grant of License<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>2.1 <u><span style='color:black'>Licensor</span></u>
+grants to Licensee, against full payment of respected<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>license fee or Subscription fee, a worldwide,
+royalty-free,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><u><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco;color:black'>irrevocable</span></u><span
+style='font-size:11.0pt;font-family:Monaco;mso-bidi-font-family:Monaco'>,
+non-exclusive limited License to Use Licensed Software in<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Project(s) by a Developer.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>2.2 Licensee shall not, unless expressly provided
+in Agreement or in<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>the applicable legislation<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>2.2.1 rent, lease or loan Licensed Software or any
+copy of it;<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>2.2.2 remove, obliterate, <u><span
+style='color:black'>deface</span></u> or in any way alter the notice of<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><u><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco;color:black'>Licensor</span></u><span
+style='font-size:11.0pt;font-family:Monaco;mso-bidi-font-family:Monaco'> or
+third parties' proprietary rights related to Licensed<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Software;<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>2.2.3 grant sub-licenses to Licensed Software or
+assign its rights or<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>obligations under this Agreement to a third party.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>2.3 Licensee may license, for free or against a
+payment, Project<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Result including Licensed Software whether
+regarded as derivative<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>works or not. End users using Project Result that
+does not involve<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>changing any source code are not required to have
+a valid License. If<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Project Result is further developed or modified by
+changing its source<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>code or the Project Results is used as a software
+component or<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>framework in a software development project, all
+persons who Use<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Licensed Software need to have a valid License. If
+Project Result is a<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>software development tool, component or
+environment that provides the<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>functionality of the Licensed Software for use in
+software development<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>projects, all persons who Use Licensed Software
+need to have a valid<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>License.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>2.4 Licensee may transfer License to another
+person or an entity for<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>free or for a fee. License is transferred by
+giving the associated<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>License Number to the recipient and ceasing Use of
+Licensed Software<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>with that particular License Number by the
+original Licensee. After<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>this, only the Developers of the original Licensee
+for whom the<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Licensee still has a valid License and License
+Number may continue to<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Use Licensed Software.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>2.5 If the License is obtained as a part of
+Subscription, the right to<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Use Licensed Software expires when Subscription
+ends.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>2.6 If the License has been given for a limited
+period, the right to<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Use Licensed Software expires when the this period
+ends.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>3. Intellectual Property Rights<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>3.1 All Intellectual Property Rights in and to
+Licensed Software are<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>and shall at all times remain the sole and
+exclusive property of<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><u><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco;color:black'>Licensor</span></u><span
+style='font-size:11.0pt;font-family:Monaco;mso-bidi-font-family:Monaco'> and
+its third party <u><span style='color:black'>licensors</span></u>, if any.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>3.2 Licensee will not at any time do or cause to
+be done any such act<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>or thing which in any way impairs, or intends to
+impair, any right,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>title, interest or any Intellectual Property Right
+of <u><span style='color:black'>Licensor</span></u> or its<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>third party <u><span style='color:black'>licensors</span></u>.
+Licensee shall not in any manner represent that<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>it has any ownership of any kind in any of the
+above mentioned<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Intellectual Property Rights.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>4. License fee<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>4.1 In consideration for the license granted
+herein, <u><span style='color:black'>Licensor</span></u> shall<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>charge Licensee a license fee according to price
+visible at <u><span style='color:black'>Vaadin</span></u><o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Directory at the time of purchase or a
+Subscription fee when the<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>License is included as a part of Subscription.
+Licensee must have a<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>valid License <span class=GramE>for all Developers</span>
+who Use Licensed Software in Project.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>License may be used in many Projects simultaneously
+without additional<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>payments. Project Result may be copied an
+unlimited number of times<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>and deployed to an unlimited number of computers
+without additional<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>payments.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>4.2 Licensee's License will be valid on the
+payment of respected<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>license or Subscription fee and delivery of
+corresponding License<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Number by <u><span style='color:black'>Vaadin</span></u>
+<u><span style='color:black'>Ltd</span></u>. If License is given by <u><span
+style='color:black'>Vaadin</span></u> <u><span style='color:black'>Ltd</span></u>.
+without a<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>fee, License if valid immediately after delivery
+of corresponding<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>License Number by <u><span style='color:black'>Vaadin</span></u>
+<u><span style='color:black'>Ltd</span></u>.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>5. Term and termination<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>5.1 This Agreement and the Licenses granted herein
+become effective as<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>of the payment of the applicable license fee.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>5.2 In the event Licensee fails to comply with the
+terms set in this<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Agreement, the License granted herein shall not be
+valid and Licensee<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>must either comply with one of the open source
+licenses available, if<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>any, listed for Licensed Software at <u><span
+style='color:black'>Vaadin</span></u> Directory or at once cease<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>the use of Licensed Software and any of its rights
+under Clause 2, and<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>delete all copies of Licensed Software.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>5.3 <u><span style='color:black'>Licensor</span></u>
+has the right, in addition and without prejudice to any<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>other rights or remedies, to terminate this
+Agreement immediately as<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>follows:<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>5.3.1 for any material breach of Agreement, that
+is not cured within<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>seven (7) days of receipt by Licensee in default
+of a written notice<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>specifying the breach and requiring its cure;<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>5.3.2 upon receiving a written notice, if (a) all
+or a substantial<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>portion of the assets of Licensee are transferred
+to an assignee for<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>the benefit of creditors, or to a receiver or a trustee
+in bankruptcy,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>(b) a proceeding is commenced by or against
+Licensee for relief under<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>bankruptcy or similar laws and such proceeding is
+not dismissed within<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>sixty (60) days, or (c) Licensee is adjudged
+bankrupt.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>5.4 If and when this Agreement is terminated due
+to any reason or<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>cause whatsoever, the Licensee shall cease to Use
+Licensed Software<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>and any of its rights under Clause 2, and delete
+all copies of<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Licensed Software.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>5.5 Provisions of the Agreement which, by their
+nature, are intended<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>to survive its termination or expiration, shall
+survive its<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>termination or expiration.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>6. Warranties<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>THE LICENSED SOFTWARE IS PROVIDED &quot;AS
+IS&quot; WITHOUT WARRANTY OF ANY KIND<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>EXPRESS OR IMPLIED, AND TO THE MAXIMUM EXTENT
+PERMITTED BY THE<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>APPLICABLE LAW. EXCEPT AS EXPRESSLY PROVIDED IN
+THIS CLAUSE, NO<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>WARRANTY, CONDITION, UNDERTAKING, LIABILITY OR
+TERM, EXPRESS OR<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>IMPLIED, STATUTORY OR OTHERWISE, AS TO CONDITION,
+QUALITY,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>PERFORMANCE, FUNCTIONALITY, INFRINGEMENT,
+MERCHANTABILITY, DURABILITY<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>OR FITNESS FOR PURPOSE, IS GIVEN OR ASSUMED BY
+VAADIN LTD., LICENSOR<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>OR ITS LICENSORS AND ALL SUCH WARRANTIES,
+CONDITIONS, UNDERTAKINGS AND<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>TERMS ARE HEREBY EXCLUDED.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>7. Limitation of Liability<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>VAADIN LTD. AND/OR LICENSOR WILL NOT BE LIABLE FOR
+ANY INDIRECT,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>INCIDENTAL, PUNITIVE OR CONSEQUENTIAL LOSS,
+DAMAGE, COST OR EXPENSE OF<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>ANY KIND WHATSOEVER AND HOWSOEVER CAUSED
+(INCLUDING BUSINESS<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>INTERRUPTION, OR ANY LOSS OF BUSINESS, ANTICIPATED
+SAVINGS, REVENUE,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>GOODWILL, MANAGEMENT TIME, LOSS OF PROFITS OR OF
+CONTRACTS, LOSS OF<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>OPERATION TIME, LOSS OF REPUTATION OR OF DATA)
+INCLUDING NEGLIGENCE,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>WHETHER IN CONTRACT OR TORT, EVEN IF THEY HAVE
+BEEN ADVISED OF THE<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>POSSIBILITY. DEVELOPER WILL USE REASONABLE EFFORTS
+TO MITIGATE THEIR<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>LOSS SUFFERED. VAADIN LTD'S AND/OR LICENSOR'S
+AGGREGATE LIABILITY AND<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>THAT OF ITS AFFILIATES AND SUPPLIERS UNDER OR IN
+CONNECTION WITH THIS<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>LICENSE AGREEMENT WILL BE LIMITED TO THE AMOUNT
+PAID FOR THE LICENSED<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>SOFTWARE.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>8. Updates, new versions maintenance and support<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><u><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco;color:black'>Licensor</span></u><span
+style='font-size:11.0pt;font-family:Monaco;mso-bidi-font-family:Monaco'> may,
+in its sole discretion, provide maintenance releases,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>updates and upgrades as new versions of Licensed
+Software. All new<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Maintenance Version and Minor Version updates of
+Licensed Software are<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>free and do not require a purchase of new
+Licenses. Major Version<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>upgrades require a new License.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Licensee is not entitled to receive support for
+the Licensed Software,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>but <u><span style='color:black'>Licensor</span></u>
+may, in its sole discretion, provide support either for<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>free or for a fee.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>9. Miscellaneous<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>9.1 No Waiver<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>The failure of <u><span style='color:black'>Licensor</span></u>
+to exercise any of its rights under this<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Agreement or to require the performance of any
+term or provision of<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>this Agreement, or the waiver by either Party of
+such breach of this<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Agreement, shall not prevent a subsequent exercise
+or enforcement of<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>such right or be deemed a waiver of any subsequent
+breach of the same<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>or any other term or provision of this Agreement.
+Any waiver of the<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>performance of any of the terms or conditions of
+this Agreement shall<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>be effective only if in writing and signed by the
+Party against which<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>such waiver is to be enforced.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>9.2 Headings<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>The headings in this Agreement are for the
+convenience of the Parties<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>only and are not intended to define or limit the
+scope or<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>interpretation of the Agreement or any provision <u><span
+style='color:black'>hereof</span></u>.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>9.3 <u><span style='color:black'>Severability</span></u><o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>If any term of this Agreement is invalid or <u><span
+style='color:black'>unenforceable</span></u>, such terms<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>or provisions shall not invalidate the rest of the
+Agreement which<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>shall remain in full force and effect as if such
+invalidated or<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><u><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco;color:black'>unenforceable</span></u><span
+style='font-size:11.0pt;font-family:Monaco;mso-bidi-font-family:Monaco'> terms
+or conditions had not been made a part of this<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Agreement. In the event this section (<u><span
+style='color:black'>Severability</span></u>) becomes operative,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Parties agree to attempt to negotiate settlement
+that carries out the<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>economic intent of the terms or provisions found
+invalid or<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><u><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco;color:black'>unenforceable</span></u><span
+style='font-size:11.0pt;font-family:Monaco;mso-bidi-font-family:Monaco'>.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>9.4 Export Control<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>The Licensed Software may be subject to import and
+export controls in<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>other countries. Licensee agrees to strictly
+comply with all<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>applicable import and export regulations and
+acknowledge that Licensee<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>has the responsibility to obtain licenses to
+export, re-export,<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>transfer or import Licensed Software.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>9.5 Entire Agreement and Assignment<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Agreement sets forth the entire agreement between
+the Parties with<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>respect to the subject matter <u><span
+style='color:black'>hereof</span></u> and supersedes any prior<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>proposals and representations, whether written or
+oral. Neither Party<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>shall have the right to assign this Agreement to a
+third party without<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>the prior written consent of the other party.
+However, <u><span style='color:black'>Licensor</span></u> shall<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>have the right to assign this Agreement and all of
+the rights and<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>obligations contained therein to a company
+belonging to the same group<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>of companies as <u><span style='color:black'>Licensor</span></u>,
+and to a third party to which the business<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>of <u><span style='color:black'>Licensor</span></u>
+is transferred. As an exception, the Licensee shall have<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>the right to transfer License as described in 2.4.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'><o:p>&nbsp;</o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>9.6 Governing Law<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>This Agreement and its terms and conditions shall
+be governed by and<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>construed in accordance with the substantive laws
+in force in: (a) the<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>State of California, if Licensee's <u><span
+style='color:black'>domicile</span></u> is in the United States;<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>or (b) <u><span style='color:black'>Finland</span></u>,
+if Licensee's <u><span style='color:black'>domicile</span></u> is outside the
+United States.<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>This Agreement shall be construed and enforced
+without regard to the<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>United Nations Convention on the International
+Sale of Goods. The<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>official text of the Agreement or any notices
+given or accounts or<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>statements required hereby shall be in English.
+Any dispute or<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>controversy or claim arising out of or relating to
+this Agreement<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>involving the Parties, shall be resolved by final
+and binding<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>arbitration in accordance with: (a) the
+International Chamber of<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Commerce Rules of Arbitration if Licensee's <u><span
+style='color:black'>domicile</span></u> is in the United<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>States; or (b) the Arbitration Rules of the <u><span
+style='color:black'>Finnish</span></u> Central Chamber of<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>Commerce if Licensee's <u><span style='color:black'>domicile</span></u>
+is outside the United States; by one<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>(1) arbitrator appointed according to the
+aforementioned rules. The<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>arbitration shall be conducted in the English
+language in: (a) <u><span style='color:black'>San</span></u><o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><u><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco;color:black'>Francisco</span></u><span
+style='font-size:11.0pt;font-family:Monaco;mso-bidi-font-family:Monaco'>,
+California, United States if Licensee's <u><span style='color:black'>domicile</span></u>
+is in the<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>United States; or (b) <u><span style='color:black'>Turku</span></u>,
+<u><span style='color:black'>Finland</span></u> if Licensee's <u><span
+style='color:black'>domicile</span></u> is outside<o:p></o:p></span></p>
+
+<p class=MsoNormal style='mso-pagination:none;mso-layout-grid-align:none;
+text-autospace:none'><span style='font-size:11.0pt;font-family:Monaco;
+mso-bidi-font-family:Monaco'>the United States.<o:p></o:p></span></p>
+
+<p class=MsoNormal><o:p>&nbsp;</o:p></p>
+
+</div>
+
+</body>
+
+</html>
+
+
+</body></html> \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.feature.ecview/pom.xml b/org.eclipse.osbp.mobile.vaadin.feature.ecview/pom.xml
new file mode 100644
index 0000000..5c9f86f
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.feature.ecview/pom.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--#======================================================================= -->
+<!--# Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany). -->
+<!--# 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: -->
+<!--# Cristiano Gavi??o - initial API and implementation -->
+<!--#======================================================================= -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.eclipse.osbp.mobile.vaadin</groupId>
+ <artifactId>org.eclipse.osbp.mobile.vaadin.aggregator</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
+ </parent>
+ <artifactId>org.eclipse.osbp.mobile.vaadin.feature.ecview</artifactId>
+ <packaging>eclipse-feature</packaging>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-source-feature-plugin</artifactId>
+ <version>${tychoExtrasVersion}</version>
+ <executions>
+ <execution>
+ <id>source-feature</id>
+ <phase>package</phase>
+ <goals>
+ <goal>source-feature</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <labelSuffix> (source)</labelSuffix>
+ </configuration>
+ </plugin>
+ <plugin>
+ <!-- workaround while bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=398250
+ is not fixed -->
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <executions>
+ <execution>
+ <id>attached-p2-metadata</id>
+ <phase>package</phase>
+ <goals>
+ <goal>p2-metadata</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>javadoc-jar</id>
+ <phase>package</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ <description>Contains an UI-Kit implementation for ECView UI rendering engine.
+</description>
+</project>
diff --git a/org.eclipse.osbp.mobile.vaadin.feature.ecview/src/main/javadoc/README.txt b/org.eclipse.osbp.mobile.vaadin.feature.ecview/src/main/javadoc/README.txt
new file mode 100644
index 0000000..831da7e
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.feature.ecview/src/main/javadoc/README.txt
@@ -0,0 +1 @@
+Resource folder for javadoc resources. \ No newline at end of file
diff --git a/org.eclipse.osbp.mobile.vaadin.feature.ecview/src/overview.html b/org.eclipse.osbp.mobile.vaadin.feature.ecview/src/overview.html
new file mode 100644
index 0000000..345202d
--- /dev/null
+++ b/org.eclipse.osbp.mobile.vaadin.feature.ecview/src/overview.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+ <title>OSBP runtime web vaadin components feature Overview</title>
+</head>
+<body>
+<p>The <b>OSBP&nbsp;feature</b> contains the Vaadin Mobile Touchkit Extensions for ECView project.</p>
+
+<p><strong>Attention: Read the copyright notice of CVAL3 license.</strong></p>
+</body>
+</html>
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..f13985f
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,142 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--#======================================================================= -->
+<!--# Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany). -->
+<!--# 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: -->
+<!--# Cristiano Gavi??o - initial API and implementation -->
+<!--#======================================================================= -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.osbp.releng.maven</groupId>
+ <artifactId>org.eclipse.osbp.releng.maven.parent.tycho</artifactId>
+ <version>0.9.0-SNAPSHOT</version>
+ <relativePath/>
+ </parent>
+
+ <groupId>org.eclipse.osbp.mobile.vaadin</groupId>
+ <artifactId>org.eclipse.osbp.mobile.vaadin.aggregator</artifactId>
+ <packaging>pom</packaging>
+
+ <properties>
+ <osbp.gitrepo.name>${project.groupId}</osbp.gitrepo.name>
+ <vaadin.version>7.5.7</vaadin.version>
+ </properties>
+
+ <pluginRepositories>
+ <pluginRepository>
+ <id>vaadin-snapshots</id>
+ <url>http://oss.sonatype.org/content/repositories/vaadin-snapshots/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ <repositories>
+ <repository>
+ <id>osbp-nexus-thirdparty</id>
+ <name>OSBP Nexus Thirdparty</name>
+ <url>http://download.osbee.org:8086/nexus/content/repositories/osbee-thirdparty/</url>
+ </repository>
+ <repository>
+ <id>vaadin-addons</id>
+ <url>http://maven.vaadin.com/vaadin-addons</url>
+ </repository>
+ </repositories>
+
+ <dependencies>
+ </dependencies>
+
+ <modules>
+ <module>org.eclipse.osbp.mobile.vaadin.ecview.api</module>
+ <module>org.eclipse.osbp.mobile.vaadin.ecview.editparts</module>
+ <module>org.eclipse.osbp.mobile.vaadin.ecview.editparts.emf</module>
+ <module>org.eclipse.osbp.mobile.vaadin.ecview.model</module>
+ <module>org.eclipse.osbp.mobile.vaadin.feature.ecview</module>
+ </modules>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>3.1</version>
+ <configuration>
+ <source>1.8</source>
+ <target>1.8</target>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <resolver>p2</resolver>
+ <pomDependencies>consider</pomDependencies>
+ <environments>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86_64</arch>
+ </environment>
+ <environment>
+ <os>linux</os>
+ <ws>gtk</ws>
+ <arch>x86</arch>
+ </environment>
+ <environment>
+ <os>linux</os>
+ <ws>gtk</ws>
+ <arch>x86_64</arch>
+ </environment>
+ <environment>
+ <os>macosx</os>
+ <ws>cocoa</ws>
+ <arch>x86_64</arch>
+ </environment>
+ </environments>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-clean-plugin</artifactId>
+ <configuration>
+ <filesets>
+ <fileset>
+ <directory>xtend-gen</directory>
+ <includes>
+ <include>**</include>
+ </includes>
+ </fileset>
+ </filesets>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.xtend</groupId>
+ <artifactId>xtend-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>compile</goal>
+ <goal>testCompile</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>xtend-gen</outputDirectory>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>

Back to the top