parallel ip - initial checkin

Signed-off-by: Ralf Mollik <ramollik@compex-commerce.com>
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>