This is an automated email from the ASF dual-hosted git repository.

carlosrovira pushed a commit to branch feature/vivid-ui-set
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git

commit fc85819b00c8c98db8bbb04f6262f54a15a0c17f
Author: Carlos Rovira <carlosrov...@apache.org>
AuthorDate: Tue Feb 20 21:04:59 2018 +0100

    fresh branch with all vivid work, still not work
---
 examples/royale/VividExample/.vscode/launch.json   |  21 +++
 examples/royale/VividExample/.vscode/settings.json |   3 +
 examples/royale/VividExample/.vscode/tasks.json    |   8 +
 examples/royale/VividExample/README.txt            |  26 ++++
 examples/royale/VividExample/asconfig.json         |  31 ++++
 examples/royale/VividExample/build.xml             |  68 ++++++++
 examples/royale/VividExample/pom.xml               |  83 ++++++++++
 .../src/main/config/compile-app-config.xml         |  28 ++++
 .../src/main/resources/vivid-example-styles.css    |  25 +++
 .../royale/VividExample/src/main/royale/App.mxml   |  40 +++++
 .../src/main/royale/ButtonPlayGround.mxml          |  42 +++++
 .../src/main/royale/TextInputPlayGround.mxml       |  28 ++++
 examples/royale/pom.xml                            |   1 +
 frameworks/projects/Vivid/.vscode/launch.json      |  21 +++
 frameworks/projects/Vivid/.vscode/settings.json    |   3 +
 frameworks/projects/Vivid/.vscode/tasks.json       |   8 +
 frameworks/projects/Vivid/asconfig.json            |  34 ++++
 frameworks/projects/Vivid/build.xml                | 130 ++++++++++++++++
 .../royale => frameworks/projects/Vivid}/pom.xml   | 133 ++++++----------
 .../Vivid/src/main/config/compile-swf-config.xml   | 105 +++++++++++++
 .../projects/Vivid/src/main/resources/defaults.css |  86 +++++++++++
 .../Vivid/src/main/resources/vivid-as-manifest.xml |  25 +++
 .../Vivid/src/main/resources/vivid-manifest.xml    |  29 ++++
 .../projects/Vivid/src/main/royale/VividClasses.as |  40 +++++
 .../royale/org/apache/royale/vivid/Application.as  |  70 +++++++++
 .../main/royale/org/apache/royale/vivid/Slider.as  |  72 +++++++++
 .../royale/org/apache/royale/vivid/TextButton.as   |  63 ++++++++
 .../royale/org/apache/royale/vivid/TextField.as    | 115 ++++++++++++++
 .../apache/royale/vivid/beads/SliderThumbView.as   | 121 +++++++++++++++
 .../apache/royale/vivid/beads/SliderTrackView.as   | 121 +++++++++++++++
 .../org/apache/royale/vivid/beads/SliderView.as    | 172 +++++++++++++++++++++
 .../royale/vivid/supportClasses/ITextField.as      |  68 ++++++++
 .../royale/vivid/supportClasses/TextFieldBase.as   | 154 ++++++++++++++++++
 .../projects/VividBlueTheme/.vscode/launch.json    |  21 +++
 .../projects/VividBlueTheme/.vscode/settings.json  |   3 +
 .../projects/VividBlueTheme/.vscode/tasks.json     |   8 +
 frameworks/projects/VividBlueTheme/asconfig.json   |  34 ++++
 frameworks/projects/VividBlueTheme/build.xml       | 133 ++++++++++++++++
 frameworks/projects/VividBlueTheme/pom.xml         |  66 ++++++++
 .../src/main/config/compile-swf-config.xml         |  91 +++++++++++
 .../src/main/resources/TextField.css               |  75 +++++++++
 .../VividBlueTheme/src/main/resources/defaults.css |  33 ++++
 .../src/main/royale/VividBlueThemeClasses.as       |  33 ++++
 frameworks/projects/pom.xml                        |   2 +
 44 files changed, 2385 insertions(+), 88 deletions(-)

diff --git a/examples/royale/VividExample/.vscode/launch.json 
b/examples/royale/VividExample/.vscode/launch.json
new file mode 100644
index 0000000..5dfb672
--- /dev/null
+++ b/examples/royale/VividExample/.vscode/launch.json
@@ -0,0 +1,21 @@
+{
+    "version": "0.2.0",
+    "configurations": [
+        {
+            "name": "Launch Chrome against debug.html, with sourcemaps",
+            "type": "chrome",
+            "request": "launch",
+            "file": 
"${workspaceRoot}/target/javascript/bin/js-debug/index.html",
+            "sourceMaps": true,
+            "preLaunchTask": "mvn"
+        },
+        {
+            "name": "Launch Firefox against debug.html, with sourcemaps",
+            "type": "firefox",
+            "request": "launch",
+            "file": 
"${workspaceRoot}/target/javascript/bin/js-debug/index.html",
+            "sourceMaps": true,
+            "preLaunchTask": "mvn"
+        }
+    ]
+}
diff --git a/examples/royale/VividExample/.vscode/settings.json 
b/examples/royale/VividExample/.vscode/settings.json
new file mode 100644
index 0000000..1069e6c
--- /dev/null
+++ b/examples/royale/VividExample/.vscode/settings.json
@@ -0,0 +1,3 @@
+{
+    "nextgenas.sdk.framework": 
"/Users/carlosrovira/Dev/Royale/Sdks/apache-royale-0.9.1"
+}
\ No newline at end of file
diff --git a/examples/royale/VividExample/.vscode/tasks.json 
b/examples/royale/VividExample/.vscode/tasks.json
new file mode 100644
index 0000000..5d6198d
--- /dev/null
+++ b/examples/royale/VividExample/.vscode/tasks.json
@@ -0,0 +1,8 @@
+{
+       // for the documentation about the tasks.json format
+       "version": "0.1.0",
+       "command": "mvn",
+       "args": ["clean", "install", "-DskipTests"],
+       "isShellCommand": true,
+       "showOutput": "always"
+}
\ No newline at end of file
diff --git a/examples/royale/VividExample/README.txt 
b/examples/royale/VividExample/README.txt
new file mode 100644
index 0000000..5d2de45
--- /dev/null
+++ b/examples/royale/VividExample/README.txt
@@ -0,0 +1,26 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+DESCRIPTION
+
+The VividExample is demo app to customize styles on Royale components
+
+Right now this is a starter project with only a button to start developing 
styles
+
+
diff --git a/examples/royale/VividExample/asconfig.json 
b/examples/royale/VividExample/asconfig.json
new file mode 100644
index 0000000..4b6259e
--- /dev/null
+++ b/examples/royale/VividExample/asconfig.json
@@ -0,0 +1,31 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+{
+    "config": "royale",
+    "compilerOptions": {
+        "debug": false,
+        "targets": ["JSRoyale","SWF"],
+        "source-map": true
+    },
+    "additionalOptions": "-remove-circulars 
-js-output-optimization=skipAsCoercions",
+    "files":
+    [
+        "src/main/royale/App.mxml"
+    ]
+}
diff --git a/examples/royale/VividExample/build.xml 
b/examples/royale/VividExample/build.xml
new file mode 100644
index 0000000..2f99436
--- /dev/null
+++ b/examples/royale/VividExample/build.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
+
+<project name="VividExample" default="main" basedir=".">
+    <property name="ROYALE_HOME" location="../../.."/>
+    <property name="example" value="App" />
+    
+    <property file="${ROYALE_HOME}/env.properties"/>
+    <property environment="env"/>
+    <property file="${ROYALE_HOME}/build.properties"/>
+    <property name="ROYALE_HOME" value="${ROYALE_HOME}"/>
+
+    <include file="${basedir}/../../build_example.xml" />
+    
+    <target name="main" depends="clean,build_example.compile" 
description="Clean build of ${example}">
+        <mkdir dir="${basedir}/bin/js-debug/assets" />
+        <copy todir="${basedir}/bin/js-debug/assets" failonerror="false">
+            <fileset dir="${basedir}/src/main/resources/assets">
+                <include name="**" />
+            </fileset>
+        </copy>
+        <mkdir dir="${basedir}/bin/js-release/assets" />
+        <copy todir="${basedir}/bin/js-release/assets" failonerror="false">
+            <fileset dir="${basedir}/src/main/resources/assets">
+                <include name="**" />
+            </fileset>
+        </copy>
+        <replace file="${basedir}/bin/js-debug/index.html" token="${primary}" 
value="indigo" />
+        <replace file="${basedir}/bin/js-debug/index.html" token="${accent}" 
value="pink" />
+        <replace file="${basedir}/bin/js-release/index.html" 
token="${primary}" value="indigo" />
+        <replace file="${basedir}/bin/js-release/index.html" token="${accent}" 
value="pink" />
+    </target>
+    
+    <target name="clean">
+        <delete dir="${basedir}/bin" failonerror="false" />
+        <delete dir="${basedir}/bin-debug" failonerror="false" />
+        <delete dir="${basedir}/bin-release" failonerror="false" />
+        <delete dir="${basedir}/target" failonerror="false" />
+    </target>
+
+    <target name="examine" depends="build_example.get.browser">
+        <property name="which" value="debug" />
+        <echo message="See various team members."/>
+        <exec executable="${browser}" dir="${basedir}/bin/js-${which}" 
failonerror="true">
+            <arg value="${basedir}/bin/js-${which}/index.html"/>
+        </exec>
+    </target>
+
+
+</project>
diff --git a/examples/royale/VividExample/pom.xml 
b/examples/royale/VividExample/pom.xml
new file mode 100644
index 0000000..2768e30
--- /dev/null
+++ b/examples/royale/VividExample/pom.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+<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.apache.royale.examples</groupId>
+    <artifactId>examples-royale</artifactId>
+    <version>0.9.2-SNAPSHOT</version>
+  </parent>
+
+  <artifactId>VividExample</artifactId>
+  <version>0.9.2-SNAPSHOT</version>
+  <packaging>swf</packaging>
+
+  <name>Apache Royale: Examples: Royale: VividExample</name>
+
+  <build>
+    <sourceDirectory>src/main/royale</sourceDirectory>
+    <resources>
+      <resource>
+        <directory>src/main/resources</directory>
+        <filtering>true</filtering>
+      </resource>
+    </resources>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.royale.compiler</groupId>
+        <artifactId>royale-maven-plugin</artifactId>
+        <extensions>true</extensions>
+        <configuration>
+          <mainClass>App.mxml</mainClass>
+          <targets>JSRoyale</targets>
+          
<!--<htmlTemplate>${basedir}/target/javascript/bin/js-debug/vivid-js-index-template.html</htmlTemplate>
+          
<additionalCompilerOptions>-compiler.exclude-defaults-css-files=Basic-${royale.framework.version}-js.swc:defaults.css</additionalCompilerOptions>-->
+          
<additionalCompilerOptions>-theme=${basedir}/../../../frameworks/projects/VividBlueTheme/target/VividBlueTheme-${royale.framework.version}-js.swc</additionalCompilerOptions>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Vivid</artifactId>
+      <version>0.9.2-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.2-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>HTML</artifactId>
+      <version>0.9.2-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+  </dependencies>
+
+</project>
diff --git 
a/examples/royale/VividExample/src/main/config/compile-app-config.xml 
b/examples/royale/VividExample/src/main/config/compile-app-config.xml
new file mode 100644
index 0000000..f23f22c
--- /dev/null
+++ b/examples/royale/VividExample/src/main/config/compile-app-config.xml
@@ -0,0 +1,28 @@
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+<royale-config>
+    <js-output-optimization>
+        <optimization>skipAsCoercions</optimization>
+    </js-output-optimization>
+    <compiler>
+        <theme>
+            
<filename>../../../../../../frameworks/libs/VividBlueTheme.swc</filename>
+        </theme>
+    </compiler>
+</royale-config>
diff --git 
a/examples/royale/VividExample/src/main/resources/vivid-example-styles.css 
b/examples/royale/VividExample/src/main/resources/vivid-example-styles.css
new file mode 100644
index 0000000..48829b3
--- /dev/null
+++ b/examples/royale/VividExample/src/main/resources/vivid-example-styles.css
@@ -0,0 +1,25 @@
+/*
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+*/
+
+@namespace "http://www.w3.org/1999/xhtml";;
+
+
+
diff --git a/examples/royale/VividExample/src/main/royale/App.mxml 
b/examples/royale/VividExample/src/main/royale/App.mxml
new file mode 100644
index 0000000..dd98eaa
--- /dev/null
+++ b/examples/royale/VividExample/src/main/royale/App.mxml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!---
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<v:Application xmlns:fx="http://ns.adobe.com/mxml/2009";
+                          xmlns:v="library://ns.apache.org/royale/vivid"
+                          xmlns:js="library://ns.apache.org/royale/basic"
+                          xmlns:local="*">
+
+       <fx:Style source="../../main/resources/vivid-example-styles.css"/>
+       
+       <js:valuesImpl>
+               <js:SimpleCSSValuesImpl />
+       </js:valuesImpl>
+       <js:initialView>
+               <js:View width="100%" height="100%" className="page-content">
+                       <js:beads>
+                               <js:VerticalLayout />
+                       </js:beads>
+                       <local:ButtonPlayGround/>
+                       <local:TextInputPlayGround/>
+        </js:View>
+       </js:initialView>
+</v:Application>
diff --git a/examples/royale/VividExample/src/main/royale/ButtonPlayGround.mxml 
b/examples/royale/VividExample/src/main/royale/ButtonPlayGround.mxml
new file mode 100644
index 0000000..1c95229
--- /dev/null
+++ b/examples/royale/VividExample/src/main/royale/ButtonPlayGround.mxml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+-->
+<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009";
+                 xmlns:js="library://ns.apache.org/royale/basic"
+                 xmlns:v="library://ns.apache.org/royale/vivid">
+    
+       <fx:Script>
+               <![CDATA[
+        private function onValueChange(event:Event):void
+        {
+               button.width = slider.value;
+        }
+       ]]>
+       </fx:Script>
+
+       <js:beads>
+               <js:VerticalLayout/>
+       </js:beads>
+       
+       <v:TextButton id="button" text="Button" width="120" height="40"/>
+
+       <v:Slider id="slider" width="250" value="120" minimum="50" maximum="250"
+                               valueChange="onValueChange(event)"/>
+
+</js:Group>
diff --git 
a/examples/royale/VividExample/src/main/royale/TextInputPlayGround.mxml 
b/examples/royale/VividExample/src/main/royale/TextInputPlayGround.mxml
new file mode 100644
index 0000000..eced5aa
--- /dev/null
+++ b/examples/royale/VividExample/src/main/royale/TextInputPlayGround.mxml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+-->
+<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009";
+                 xmlns:js="library://ns.apache.org/royale/basic"
+                 xmlns:v="library://ns.apache.org/royale/vivid">
+    
+       
+       
+       <v:TextField text="Text Input" width="120" height="40"/>
+
+</js:Group>
diff --git a/examples/royale/pom.xml b/examples/royale/pom.xml
index d06e5b8..9ba1570 100644
--- a/examples/royale/pom.xml
+++ b/examples/royale/pom.xml
@@ -71,6 +71,7 @@
     <module>DataBindingExampleWithFlexLayout</module>
     <module>DragAndDropExample</module>
     <module>AlertExample</module>
+    <module>VividExample</module>
   </modules>
 
   <build>
diff --git a/frameworks/projects/Vivid/.vscode/launch.json 
b/frameworks/projects/Vivid/.vscode/launch.json
new file mode 100644
index 0000000..5dfb672
--- /dev/null
+++ b/frameworks/projects/Vivid/.vscode/launch.json
@@ -0,0 +1,21 @@
+{
+    "version": "0.2.0",
+    "configurations": [
+        {
+            "name": "Launch Chrome against debug.html, with sourcemaps",
+            "type": "chrome",
+            "request": "launch",
+            "file": 
"${workspaceRoot}/target/javascript/bin/js-debug/index.html",
+            "sourceMaps": true,
+            "preLaunchTask": "mvn"
+        },
+        {
+            "name": "Launch Firefox against debug.html, with sourcemaps",
+            "type": "firefox",
+            "request": "launch",
+            "file": 
"${workspaceRoot}/target/javascript/bin/js-debug/index.html",
+            "sourceMaps": true,
+            "preLaunchTask": "mvn"
+        }
+    ]
+}
diff --git a/frameworks/projects/Vivid/.vscode/settings.json 
b/frameworks/projects/Vivid/.vscode/settings.json
new file mode 100644
index 0000000..1069e6c
--- /dev/null
+++ b/frameworks/projects/Vivid/.vscode/settings.json
@@ -0,0 +1,3 @@
+{
+    "nextgenas.sdk.framework": 
"/Users/carlosrovira/Dev/Royale/Sdks/apache-royale-0.9.1"
+}
\ No newline at end of file
diff --git a/frameworks/projects/Vivid/.vscode/tasks.json 
b/frameworks/projects/Vivid/.vscode/tasks.json
new file mode 100644
index 0000000..5d6198d
--- /dev/null
+++ b/frameworks/projects/Vivid/.vscode/tasks.json
@@ -0,0 +1,8 @@
+{
+       // for the documentation about the tasks.json format
+       "version": "0.1.0",
+       "command": "mvn",
+       "args": ["clean", "install", "-DskipTests"],
+       "isShellCommand": true,
+       "showOutput": "always"
+}
\ No newline at end of file
diff --git a/frameworks/projects/Vivid/asconfig.json 
b/frameworks/projects/Vivid/asconfig.json
new file mode 100644
index 0000000..36edd42
--- /dev/null
+++ b/frameworks/projects/Vivid/asconfig.json
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ {
+    "config": "royale",
+    "type": "lib",
+    "compilerOptions": {
+        "debug": true,
+        "targets": [
+            "JSRoyale",
+            "SWF"
+        ],
+        "include-classes": [
+            "VividClasses"
+        ],
+        "include-sources": [
+            "src/main/royale"
+        ],
+        "output": "target/Vivid.swc"
+    }
+}
diff --git a/frameworks/projects/Vivid/build.xml 
b/frameworks/projects/Vivid/build.xml
new file mode 100644
index 0000000..799b640
--- /dev/null
+++ b/frameworks/projects/Vivid/build.xml
@@ -0,0 +1,130 @@
+<?xml version="1.0"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
+
+<project name="Vivid" default="main" basedir=".">
+    <property name="ROYALE_HOME" location="../../.."/>
+    
+    <property file="${ROYALE_HOME}/env.properties"/>
+    <property environment="env"/>
+    <property file="${ROYALE_HOME}/build.properties"/>
+    <property name="ROYALE_HOME" value="${ROYALE_HOME}"/>
+    
+    <property name="target.name" value="${ant.project.name}.swc" />
+    
+    <target name="main" 
depends="clean,check-compiler,compile,compile-js,copy-swc,test" 
description="Full build of ${ant.project.name}.swc">
+    </target>
+    
+    <target name="compile-js">
+        <ant 
dir="${ROYALE_HOME}/frameworks/js/projects/${ant.project.name}JS/" 
inheritAll="false" >
+            <property name="ROYALE_SWF_COMPILER_HOME" 
value="${ROYALE_SWF_COMPILER_HOME}"/>
+            <property name="ROYALE_COMPILER_HOME" 
value="${ROYALE_COMPILER_HOME}"/>
+            <property name="ROYALE_HOME" value="${ROYALE_HOME}"/>
+        </ant>
+    </target>
+    
+    <target name="copy-swc" if="env.AIR_HOME">
+        <copy file="${basedir}/target/${target.name}" 
tofile="${ROYALE_HOME}/frameworks/libs/${target.name}" />
+    </target>
+    
+    <target name="check-for-tests" >
+        <condition property="skip-tests" >
+            <not>
+                <available file="${basedir}/src/test/royale/build.xml" />
+            </not>
+        </condition>
+    </target>
+    
+    <target name="test" depends="check-for-tests" unless="skip-tests">
+        <ant dir="src/test/royale" />
+    </target>
+    
+    <target name="clean">
+        <delete failonerror="false">
+            <fileset dir="${ROYALE_HOME}/frameworks/libs">
+                <include name="${target.name}"/>
+            </fileset>
+        </delete>
+        <delete failonerror="false" includeemptydirs="true">
+            <fileset dir="${basedir}/target">
+                <include name="**/**"/>
+            </fileset>
+        </delete>
+        <antcall target="clean-tests" />
+    </target>
+    
+    <target name="clean-tests" depends="check-for-tests" unless="skip-tests">
+        <ant dir="src/test/royale" target="clean"/>
+    </target>
+    
+    <target name="compile" description="Compiles .as files into .swc" 
if="env.AIR_HOME">
+        <echo message="Compiling libs/${ant.project.name}.swc"/>
+        <echo message="ROYALE_HOME: ${ROYALE_HOME}"/>
+        <echo message="ROYALE_SWF_COMPILER_HOME: ${ROYALE_SWF_COMPILER_HOME}"/>
+        <echo message="ROYALE_COMPILER_HOME: ${ROYALE_COMPILER_HOME}"/>
+        
+        <java jar="${ROYALE_COMPILER_HOME}/lib/compc.jar" fork="true" >
+            <jvmarg value="-Xmx384m" />
+            <jvmarg value="-Dsun.io.useCanonCaches=false" />
+            <jvmarg value="-Droyalelib=${ROYALE_HOME}/frameworks" />
+            <arg value="+royalelib=${ROYALE_HOME}/frameworks" />
+            <arg value="+playerglobal.version=${playerglobal.version}" />
+            <arg value="+env.AIR_HOME=${env.AIR_HOME}" />
+            <arg value="-compiler.strict-xml=true" />
+            <arg value="-compiler.targets=SWF,JSRoyale" />
+            <arg value="-output=${basedir}/target/${target.name}" />
+            <arg 
value="-load-config=${basedir}/src/main/config/compile-swf-config.xml" />
+            <arg 
value="-js-load-config=${ROYALE_HOME}/frameworks/js-config.xml" />
+            <arg 
value="-js-load-config+=${basedir}/../../js/projects/${ant.project.name}JS/src/main/config/compile-js-config.xml"
 />
+        </java>
+    </target>
+    
+    <target name="check-compiler" 
depends="check-compiler-home,check-transpiler-home">
+        <path id="lib.path">
+            <fileset dir="${ROYALE_COMPILER_HOME}/lib" 
includes="compiler-royaleTasks.jar"/>
+        </path>
+        <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
+    </target>
+    
+    <target name="check-compiler-home"
+        description="Set ROYALE_SWF_COMPILER_HOME to point at the compiler.">
+        
+        <available file="${ROYALE_HOME}/lib/compiler-mxmlc.jar"
+        type="file"
+        property="ROYALE_SWF_COMPILER_HOME"
+        value="${ROYALE_HOME}"/>
+        
+        <fail message="ROYALE_SWF_COMPILER_HOME must be set to a folder with a 
lib sub-folder containing compiler-mxmlc.jar such as the compiler folder in 
royale-compiler repo or the root of a Royale SDK"
+        unless="ROYALE_SWF_COMPILER_HOME"/>
+    </target>
+    
+    <target name="check-transpiler-home"
+        description="Set ROYALE_COMPILER_HOME to point at the cross-compiler.">
+        
+        <available file="${ROYALE_HOME}/js/lib/jsc.jar"
+        type="file"
+        property="ROYALE_COMPILER_HOME"
+        value="${ROYALE_HOME}/js"/>
+        
+        <fail message="ROYALE_COMPILER_HOME must be set to a folder with a lib 
sub-folder containing jsc.jar such as the compiler-jx folder in royale-compiler 
repo or the js folder of a Royale SDK"
+        unless="ROYALE_COMPILER_HOME"/>
+    </target>
+    
+</project>
diff --git a/examples/royale/pom.xml b/frameworks/projects/Vivid/pom.xml
similarity index 54%
copy from examples/royale/pom.xml
copy to frameworks/projects/Vivid/pom.xml
index d06e5b8..3ec2f3a 100644
--- a/examples/royale/pom.xml
+++ b/frameworks/projects/Vivid/pom.xml
@@ -17,90 +17,55 @@
   limitations under the License.
 
 -->
-<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/maven-v4_0_0.xsd";>
+<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.apache.royale.examples</groupId>
-    <artifactId>examples</artifactId>
+    <groupId>org.apache.royale.framework</groupId>
+    <artifactId>projects</artifactId>
     <version>0.9.2-SNAPSHOT</version>
   </parent>
 
-  <artifactId>examples-royale</artifactId>
+  <artifactId>Vivid</artifactId>
   <version>0.9.2-SNAPSHOT</version>
-  <packaging>pom</packaging>
+  <packaging>swc</packaging>
 
-  <name>Apache Royale: Examples: Royale</name>
-
-  <modules>
-    <module>AccordionExample</module>
-    <module>ASDoc</module>
-    <module>ChartExample</module>
-    <module>CordovaCameraExample</module>
-    <module>CreateJSExample</module>
-    <module>DataBindingExample</module>
-    <module>DataBindingExample_as</module><!-- Flash error -->
-    <module>DataBindingExample_Flat</module>
-    <module>DataGridExample</module>
-    <module>DateControlsExample</module>
-    <module>DesktopMap</module>
-    <module>Flex2Royale</module>
-    <module>RoyaleStore</module>
-    <module>RoyaleStore_jquery</module>
-    <module>RoyaleTeamPage_MDL</module>
-    <module>RoyaleWebsite</module>
-    <module>RoyaleWebsiteStatsViewer</module>
-    <module>HelloWorld</module>
-    <module>HTMLElements</module>
-    <module>ListExample</module>
-    <module>MapSearch</module>
-    <module>MDLDynamicTabsExample</module>
-    <module>MDLDynamicTableExample</module>
-    <module>ModuleExample</module>
-    <module>MobileMap</module>
-    <module>MobileStocks</module>
-    <module>MobileTrader</module>
-    <module>RemoteObjectAMFTest</module>
-    <module>StorageExample</module>
-    <module>StyleExample</module>
-    <module>TeamPage</module>
-    <module>TodoListSampleApp</module>
-    <module>TreeExample</module>
-    <module>TableExample</module>
-    <module>DebuggingExample</module>
-    <module>DataBindingExampleWithFlexLayout</module>
-    <module>DragAndDropExample</module>
-    <module>AlertExample</module>
-  </modules>
+  <name>Apache Royale: Framework: Libs: Vivid</name>
 
   <build>
+    <sourceDirectory>src/main/royale</sourceDirectory>
     <plugins>
       <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-surefire-plugin</artifactId>
-        <version>2.19.1</version>
-        <executions>
-          <execution>
-            <id>tests-default</id>
-            <phase>integration-test</phase>
-            <goals>
-              <goal>test</goal>
-            </goals>
-            <configuration>
-              <!-- Run the tests from the 'examples-tests' artifact -->
-              <dependenciesToScan>
-                
<dependency>org.apache.royale.examples:examples-tests</dependency>
-              </dependenciesToScan>
-              <systemPropertyVariables>
-                <artifactId>${project.artifactId}</artifactId>
-                <version>${project.version}</version>
-                <type>${project.packaging}</type>
-                
<targets>${project.build.plugins.plugin.configuration.targets}</targets>
-                <buildDirectory>${project.build.directory}</buildDirectory>
-              </systemPropertyVariables>
-            </configuration>
-          </execution>
-        </executions>
+        <groupId>org.apache.royale.compiler</groupId>
+        <artifactId>royale-maven-plugin</artifactId>
+        <version>${royale.compiler.version}</version>
+        <extensions>true</extensions>
+        <configuration>
+          <namespaces>
+            <namespace>
+              <uri>library://ns.apache.org/royale/vivid</uri>
+              
<manifest>${project.basedir}/src/main/resources/vivid-manifest.xml</manifest>
+            </namespace>
+            <namespace>
+              <type>as</type>
+              <uri>library://ns.apache.org/royale/vivid</uri>
+              
<manifest>${project.basedir}/src/main/resources/vivid-as-manifest.xml</manifest>
+            </namespace>
+          </namespaces>
+          <includeClasses>
+            <includeClass>VividClasses</includeClass>
+          </includeClasses>
+          <includeFiles>
+            <include-file>
+              <name>defaults.css</name>
+              <path>../src/main/resources/defaults.css</path>
+            </include-file>
+          </includeFiles>
+          <includeLookupOnly>true</includeLookupOnly>
+          <!--<allowSubclassOverrides>true</allowSubclassOverrides>-->
+          <skipExtern>true</skipExtern>
+          
<!--<additionalCompilerOptions>-compiler.fxg-base-class=flash.display.Sprite</additionalCompilerOptions>-->
+        </configuration>
       </plugin>
     </plugins>
   </build>
@@ -122,28 +87,28 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
-      <artifactId>Language</artifactId>
+      <artifactId>Binding</artifactId>
       <version>0.9.2-SNAPSHOT</version>
       <type>swc</type>
       <classifier>swf</classifier>
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
-      <artifactId>Language</artifactId>
+      <artifactId>Binding</artifactId>
       <version>0.9.2-SNAPSHOT</version>
       <type>swc</type>
       <classifier>js</classifier>
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
-      <artifactId>HTML</artifactId>
+      <artifactId>Graphics</artifactId>
       <version>0.9.2-SNAPSHOT</version>
       <type>swc</type>
       <classifier>swf</classifier>
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
-      <artifactId>HTML</artifactId>
+      <artifactId>Graphics</artifactId>
       <version>0.9.2-SNAPSHOT</version>
       <type>swc</type>
       <classifier>js</classifier>
@@ -164,40 +129,32 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
-      <artifactId>Binding</artifactId>
+      <artifactId>Basic</artifactId>
       <version>0.9.2-SNAPSHOT</version>
       <type>swc</type>
       <classifier>swf</classifier>
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
-      <artifactId>Binding</artifactId>
+      <artifactId>Basic</artifactId>
       <version>0.9.2-SNAPSHOT</version>
       <type>swc</type>
       <classifier>js</classifier>
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
-      <artifactId>Graphics</artifactId>
+      <artifactId>HTML</artifactId>
       <version>0.9.2-SNAPSHOT</version>
       <type>swc</type>
       <classifier>swf</classifier>
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
-      <artifactId>Graphics</artifactId>
+      <artifactId>HTML</artifactId>
       <version>0.9.2-SNAPSHOT</version>
       <type>swc</type>
       <classifier>js</classifier>
     </dependency>
-
-    <!-- Import the shared unit-tests we want to run on all examples -->
-    <dependency>
-      <groupId>org.apache.royale.examples</groupId>
-      <artifactId>examples-tests</artifactId>
-      <version>0.9.2-SNAPSHOT</version>
-      <scope>test</scope>
-    </dependency>
   </dependencies>
 
 </project>
diff --git a/frameworks/projects/Vivid/src/main/config/compile-swf-config.xml 
b/frameworks/projects/Vivid/src/main/config/compile-swf-config.xml
new file mode 100644
index 0000000..4eef59a
--- /dev/null
+++ b/frameworks/projects/Vivid/src/main/config/compile-swf-config.xml
@@ -0,0 +1,105 @@
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+<royale-config>
+
+    <compiler>
+        <accessible>false</accessible>
+        
+        <!-- build both SWF and JS. -->
+        <targets>
+            <target>JSRoyale</target>
+        </targets>
+        <strict-xml>true</strict-xml>
+
+        <external-library-path>
+            
<path-element>${env.AIR_HOME}/frameworks/libs/air/airglobal.swc</path-element>
+            <path-element>../../../../../libs/Binding.swc</path-element>
+            <path-element>../../../../../libs/Core.swc</path-element>
+            <path-element>../../../../../libs/Graphics.swc</path-element>
+            <path-element>../../../../../libs/Basic.swc</path-element>
+            <path-element>../../../../../libs/Collections.swc</path-element>
+            <path-element>../../../../../libs/HTML.swc</path-element>
+        </external-library-path>
+        
+        <allow-subclass-overrides>true</allow-subclass-overrides>
+               <mxml>
+                       <children-as-data>true</children-as-data>
+               </mxml>
+               
<binding-value-change-event>org.apache.royale.events.ValueChangeEvent</binding-value-change-event>
+               
<binding-value-change-event-kind>org.apache.royale.events.ValueChangeEvent</binding-value-change-event-kind>
+               
<binding-value-change-event-type>valueChange</binding-value-change-event-type>
+
+        <define>
+            <name>COMPILE::SWF</name>
+            <value>true</value>
+        </define>
+        <define>
+            <name>COMPILE::JS</name>
+            <value>false</value>
+        </define>
+
+        <keep-as3-metadata>
+          <name>Bindable</name>
+          <name>Managed</name>
+          <name>ChangeEvent</name>
+          <name>NonCommittingChangeEvent</name>
+          <name>Transient</name>
+        </keep-as3-metadata>
+         
+        <locale/>
+        
+        <library-path/>
+
+        <namespaces>
+            <namespace>
+                <uri>library://ns.apache.org/royale/vivid</uri>
+                <manifest>../resources/vivid-manifest.xml</manifest>
+            </namespace>
+            <namespace>
+                <uri>library://ns.apache.org/royale/vivid</uri>
+                <manifest>../resources/vivid-as-manifest.xml</manifest>
+            </namespace>
+        </namespaces>
+        
+        <source-path>
+            <path-element>../royale</path-element>
+        </source-path>
+        
+        <warn-no-constructor>false</warn-no-constructor>
+    </compiler>
+    
+    <include-file>
+        <name>defaults.css</name>
+        <path>../resources/defaults.css</path>
+    </include-file>
+
+    <include-lookup-only>true</include-lookup-only>
+    
+    <include-classes>
+        <class>VividClasses</class>
+    </include-classes>
+    
+    <include-namespaces>
+        <uri>library://ns.apache.org/royale/vivid</uri>
+    </include-namespaces>
+        
+    <target-player>${playerglobal.version}</target-player>
+       
+
+</royale-config>
diff --git a/frameworks/projects/Vivid/src/main/resources/defaults.css 
b/frameworks/projects/Vivid/src/main/resources/defaults.css
new file mode 100644
index 0000000..e4a792a
--- /dev/null
+++ b/frameworks/projects/Vivid/src/main/resources/defaults.css
@@ -0,0 +1,86 @@
+/*
+ *
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *
+ */
+
+@namespace "library://ns.apache.org/royale/vivid";
+
+/*
+* Vivid TextField
+*/
+TextField {
+       IBeadModel: 
ClassReference("org.apache.royale.html.beads.models.TextModel");
+       /*IBeadView: 
ClassReference("org.apache.royale.html.beads.TextInputWithBorderView");
+       IBeadController: 
ClassReference("org.apache.royale.html.beads.controllers.EditableTextKeyboardController");*/
+}
+.vTextField--input {}
+.vTextField--label {}
+
+/*
+* Vivid TextButton
+*/
+
+TextButton {
+       /* Background: */
+       background-color: #D8D8D8;
+       border: 1px solid #979797;
+       border-radius: 3px;
+
+       /* TextField: */
+       font-family: 'Lato', sans-serif;
+       font-size: 13px;
+       color: #646D7A;
+}
+
+TextButton:hover {
+    background-color: #CFCFCF;
+    vertical-align: middle;
+    border: none;
+    border-radius: 6px;
+}
+
+TextButton:active {
+    background-color: #77CEFF;
+    color: #FFFFFF;
+}
+
+/*
+* Vivid Slider
+*/
+Slider {
+       IBeadModel: 
ClassReference("org.apache.royale.html.beads.models.RangeModel");
+       IBeadView:  ClassReference("org.apache.royale.vivid.beads.SliderView");
+       IBeadLayout: 
ClassReference("org.apache.royale.html.beads.layouts.HorizontalSliderLayout");
+       IBeadController: 
ClassReference("org.apache.royale.html.beads.controllers.HSliderMouseController");
+       position: relative;
+}
+.SliderTrack {
+       position: absolute;
+}
+.SliderThumb {
+       position: absolute;
+       border-radius: 15px;
+}
+
+@media -royale-swf
+{
+    Slider
+       {
+               iThumbView: 
ClassReference("org.apache.royale.vivid.beads.SliderThumbView");
+               iTrackView: 
ClassReference("org.apache.royale.vivid.beads.SliderTrackView");
+       }
+}
diff --git a/frameworks/projects/Vivid/src/main/resources/vivid-as-manifest.xml 
b/frameworks/projects/Vivid/src/main/resources/vivid-as-manifest.xml
new file mode 100644
index 0000000..e38496a
--- /dev/null
+++ b/frameworks/projects/Vivid/src/main/resources/vivid-as-manifest.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
+
+<componentPackage>
+
+    
+</componentPackage>
diff --git a/frameworks/projects/Vivid/src/main/resources/vivid-manifest.xml 
b/frameworks/projects/Vivid/src/main/resources/vivid-manifest.xml
new file mode 100644
index 0000000..4c24222
--- /dev/null
+++ b/frameworks/projects/Vivid/src/main/resources/vivid-manifest.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
+
+<componentPackage>
+
+    <component id="Application" class="org.apache.royale.vivid.Application"/>
+    <component id="TextButton" class="org.apache.royale.vivid.TextButton"/>
+    <component id="TextField" class="org.apache.royale.vivid.TextField"/>
+    <component id="Slider" class="org.apache.royale.vivid.Slider"/>
+    
+</componentPackage>
diff --git a/frameworks/projects/Vivid/src/main/royale/VividClasses.as 
b/frameworks/projects/Vivid/src/main/royale/VividClasses.as
new file mode 100644
index 0000000..a069ba8
--- /dev/null
+++ b/frameworks/projects/Vivid/src/main/royale/VividClasses.as
@@ -0,0 +1,40 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package
+{
+
+    /**
+     *  @private
+     *  This class is used to link additional classes into vivid.swc
+     *  beyond those that are found by dependecy analysis starting
+     *  from the classes specified in manifest.xml.
+     */
+    internal class VividClasses
+    {
+        import org.apache.royale.vivid.beads.SliderView; SliderView;
+           
+        COMPILE::SWF
+           {
+            import org.apache.royale.vivid.beads.SliderThumbView; 
SliderThumbView;
+            import org.apache.royale.vivid.beads.SliderTrackView; 
SliderTrackView;
+        }
+
+    }
+
+}
\ No newline at end of file
diff --git 
a/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/Application.as
 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/Application.as
new file mode 100644
index 0000000..6246c99
--- /dev/null
+++ 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/Application.as
@@ -0,0 +1,70 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.vivid
+{
+    import org.apache.royale.core.Application;
+    import org.apache.royale.core.SimpleCSSValuesImpl;
+               
+       /**
+        * Vivid Application holds specific Vivid need in a Royale Application.
+        *
+        * This class extends the standard Application and sets up the
+        * SimpleCSSValuesImpl (implementation) for convenience.
+        *
+        * 
+        *  @langversion 3.0
+        *  @playerversion Flash 10.2
+        *  @playerversion AIR 2.6
+        *  @productversion Royale 0.9.2
+        */
+       public class Application extends org.apache.royale.core.Application
+       {
+               /**
+         *  constructor.
+         *
+                * <inject_html>
+        * <link href="https://fonts.googleapis.com/css?family=Lato"; 
rel="stylesheet">
+        * </inject_html>
+                * 
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.2
+         */
+               public function Application()
+               {
+                       super();
+                       
+                       this.valuesImpl = new SimpleCSSValuesImpl();
+
+                       // this a is temp solution until we get a better way to 
get a reference to Application
+                       //topLevelApplication = this;
+               }
+
+               /**
+         *  static reference to this application used mainly for dialog 
(Dialog class)
+                * 
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.2
+         */
+        //public static var topLevelApplication:Object;
+       }
+}
diff --git 
a/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/Slider.as 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/Slider.as
new file mode 100644
index 0000000..3b47dfa
--- /dev/null
+++ 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/Slider.as
@@ -0,0 +1,72 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.vivid
+{
+       import org.apache.royale.html.Slider;
+
+    COMPILE::JS
+    {
+        import org.apache.royale.core.WrappedHTMLElement;
+    }
+
+       [Event(name="valueChange", type="org.apache.royale.events.Event")]
+
+       /**
+        *  The Slider class is a component that displays a range of values 
using a
+        *  track and a thumb control. The Slider uses the following bead types:
+        *
+        *  org.apache.royale.core.IBeadModel: the data model, typically an 
IRangeModel, that holds the Slider values.
+        *  org.apache.royale.core.IBeadView:  the bead that constructs the 
visual parts of the Slider.
+        *  org.apache.royale.core.IBeadController: the bead that handles input.
+        *  org.apache.royale.core.IThumbValue: the bead responsible for the 
display of the thumb control.
+        *  org.apache.royale.core.ITrackView: the bead responsible for the 
display of the track.
+        *
+     *  @toplevel
+        *  @langversion 3.0
+        *  @playerversion Flash 10.2
+        *  @playerversion AIR 2.6
+        *  @productversion Royale 0.9.2
+        */
+       public class Slider extends org.apache.royale.html.Slider
+       {
+               /**
+                *  constructor.
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion Royale 0.9.2
+                */
+               public function Slider()
+               {
+                       super();
+               }
+
+               
+
+        /**
+         * @royaleignorecoercion org.apache.royale.core.WrappedHTMLElement
+         */
+        COMPILE::JS
+        override protected function createElement():WrappedHTMLElement
+        {
+                       return super.createElement();
+        }
+    }
+}
diff --git 
a/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/TextButton.as
 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/TextButton.as
new file mode 100644
index 0000000..723dbdf
--- /dev/null
+++ 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/TextButton.as
@@ -0,0 +1,63 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.vivid
+{
+    import org.apache.royale.html.TextButton;
+   
+    COMPILE::JS
+    {
+        import org.apache.royale.core.WrappedHTMLElement;
+        import org.apache.royale.html.util.addElementToWrapper;
+    }
+    
+    /**
+     *  The Button class provides a Vivid Design Library UI-like appearance for
+     *  a Button.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.2
+     */
+       public class TextButton extends org.apache.royale.html.TextButton
+       {
+        /**
+         *  Constructor.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.2
+         */
+               public function TextButton()
+               {
+                       super();
+               }
+        
+        /**
+                * @private
+                * @royaleignorecoercion 
org.apache.royale.core.WrappedHTMLElement
+                */
+               COMPILE::JS
+               override protected function createElement():WrappedHTMLElement
+               {
+            return super.createElement();
+               }
+       }
+}
diff --git 
a/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/TextField.as
 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/TextField.as
new file mode 100644
index 0000000..1f43a48
--- /dev/null
+++ 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/TextField.as
@@ -0,0 +1,115 @@
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.vivid
+{
+    import org.apache.royale.vivid.supportClasses.TextFieldBase;
+
+    COMPILE::JS
+    {
+        import goog.events;
+        import org.apache.royale.core.WrappedHTMLElement;
+        import org.apache.royale.html.util.addElementToWrapper;
+    }
+
+    /**
+     *  The TextField class implements the basic control for
+     *  single-line text input.
+     *
+     *  @toplevel
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.2
+     */
+       public class TextField extends TextFieldBase
+       {
+        /**
+         *  Constructor.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.2
+         */
+               public function TextField()
+               {
+                       super();
+               }
+
+        COMPILE::JS
+        private var _positioner:WrappedHTMLElement;
+
+               COMPILE::JS
+        /**
+         * The HTMLElement used to position the component.
+         */
+        override public function get positioner():WrappedHTMLElement
+               {
+                       return _positioner;
+               }
+
+               COMPILE::JS
+        /**
+         * @private
+         */
+        override public function set positioner(value:WrappedHTMLElement):void
+               {
+                       _positioner = value;
+               }
+
+        /**
+         * @royaleignorecoercion org.apache.royale.core.WrappedHTMLElement
+         * @royaleignorecoercion HTMLDivElement
+         * @royaleignorecoercion HTMLInputElement
+         * @royaleignorecoercion HTMLLabelElement
+         * @royaleignorecoercion Text
+         */
+        COMPILE::JS
+        override protected function createElement():WrappedHTMLElement
+        {
+            typeNames = "TextField";
+
+            var div:HTMLDivElement = document.createElement('div') as 
HTMLDivElement;
+            div.className = typeNames;
+            
+            input = addElementToWrapper(this,'input') as HTMLInputElement;
+            input.setAttribute('type', 'text');
+            input.className = "vTextField--input";
+            
+            //attach input handler to dispatch royale change event when user 
write in textinput
+            //goog.events.listen(element, 'change', killChangeHandler);
+            goog.events.listen(input, 'input', textChangeHandler);
+            
+            label = document.createElement('label') as HTMLLabelElement;
+            label.className = "vTextField--label";
+
+            textNode = document.createTextNode('') as Text;
+            label.appendChild(textNode);
+            
+            div.appendChild(input);
+            div.appendChild(label);
+
+            positioner = div as WrappedHTMLElement;
+            (label as WrappedHTMLElement).royale_wrapper = this;
+            _positioner.royale_wrapper = this;
+            
+            return element;
+        }
+
+       }
+}
diff --git 
a/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/beads/SliderThumbView.as
 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/beads/SliderThumbView.as
new file mode 100644
index 0000000..cb2768b
--- /dev/null
+++ 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/beads/SliderThumbView.as
@@ -0,0 +1,121 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.vivid.beads
+{
+       import flash.display.Graphics;
+       import flash.display.Shape;
+       import flash.display.SimpleButton;
+
+    import org.apache.royale.core.BeadViewBase;
+    import org.apache.royale.core.IBeadView;
+    import org.apache.royale.core.IStrand;
+       import org.apache.royale.html.Button;
+    import org.apache.royale.events.Event;
+    import org.apache.royale.events.IEventDispatcher;
+    import org.apache.royale.core.IChild;
+       
+       /**
+        *  The SliderThumbView class creates the draggable input element for 
the 
+        *  org.apache.royale.html.Slider component.
+        *  
+        *  @viewbead
+        *  @langversion 3.0
+        *  @playerversion Flash 10.2
+        *  @playerversion AIR 2.6
+        *  @productversion Royale 0.0
+        */
+       public class SliderThumbView extends BeadViewBase implements IBeadView
+       {
+               /**
+                *  constructor.
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion Royale 0.0
+                */
+               public function SliderThumbView()
+               {
+            hitArea = new Shape();
+            upView = new Shape();
+            downView = new Shape();
+            overView = new Shape();                
+               }
+               
+               /**
+                * @private
+                */
+               private function drawView(g:Graphics, bgColor:uint):void
+               {
+                       var host:Button = Button(_strand);
+            var button:SimpleButton = IChild(_strand).$displayObject as 
SimpleButton;
+                       g.clear();
+                       g.lineStyle(1,0x000000);
+                       g.beginFill(bgColor,1.0);
+                       g.drawCircle(host.width/2, host.height/2, 10);
+                       g.endFill();
+               }
+               
+               private var hitArea:Shape;
+               
+               /**
+                *  @copy org.apache.royale.core.IBead#strand
+                *  
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion Royale 0.0
+         *  @royaleignoreimport org.apache.royale.core.WrappedHTMLElement
+         *  @royaleignorecoercion org.apache.royale.core.WrappedHTMLElement
+                */
+               override public function set strand(value:IStrand):void
+               {
+                       super.strand = value;
+                       
+            drawView(hitArea.graphics, 0xDD0000);
+            drawView(upView.graphics, 0xFFFFFF);
+            drawView(downView.graphics, 0x999999);
+            drawView(overView.graphics, 0xDDDDDD);
+            
+            var button:SimpleButton = IChild(value).$displayObject as 
SimpleButton;
+            button.upState = upView;
+            button.downState = downView;
+            button.overState = overView;
+            button.hitTestState = hitArea;
+            
+            
IEventDispatcher(value).addEventListener("widthChanged",sizeChangeHandler);
+            
IEventDispatcher(value).addEventListener("heightChanged",sizeChangeHandler);    
            
+               }
+               
+               private var upView:Shape;
+               private var downView:Shape;
+               private var overView:Shape;
+        
+               /**
+                * @private
+                */
+               private function sizeChangeHandler( event:Event ) : void
+               {
+                       drawView(hitArea.graphics, 0xDD0000);
+                       drawView(upView.graphics, 0xFFFFFF);
+                       drawView(downView.graphics, 0x999999);
+                       drawView(overView.graphics, 0xDDDDDD);
+               }
+       }
+}
diff --git 
a/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/beads/SliderTrackView.as
 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/beads/SliderTrackView.as
new file mode 100644
index 0000000..4b40230
--- /dev/null
+++ 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/beads/SliderTrackView.as
@@ -0,0 +1,121 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.vivid.beads
+{
+       import flash.display.Graphics;
+       import flash.display.Shape;
+       import flash.display.SimpleButton;                      
+       
+       import org.apache.royale.core.BeadViewBase;
+       import org.apache.royale.core.IBeadView;
+       import org.apache.royale.core.IStrand;
+       import org.apache.royale.core.UIBase;
+       import org.apache.royale.html.Button;
+       import org.apache.royale.events.Event;
+       import org.apache.royale.events.IEventDispatcher;
+       import org.apache.royale.core.IChild;
+       
+       /**
+        *  The SliderTrackView class creates the track area for the 
org.apache.royale.html.Slider
+        *  component.
+        *  
+        *  @viewbead
+        *  @langversion 3.0
+        *  @playerversion Flash 10.2
+        *  @playerversion AIR 2.6
+        *  @productversion Royale 0.0
+        */
+       public class SliderTrackView extends BeadViewBase implements IBeadView
+       {
+               /**
+                *  constructor.
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion Royale 0.0
+                */
+               public function SliderTrackView()
+               {
+                       hitArea = new Shape();
+                       upView = new Shape();
+                       downView = new Shape();
+                       overView = new Shape();                                 
+               }
+               
+               /**
+                * @private
+                */
+               private function drawView(g:Graphics, bgColor:uint):void
+               {
+                       var host:Button = Button(_strand);
+            var button:SimpleButton = IChild(_strand).$displayObject as 
SimpleButton;
+                       g.clear();
+                       g.lineStyle(1,0x000000);
+                       g.beginFill(bgColor);
+                       g.drawRect(0, 0, host.width, host.height);
+                       g.endFill();
+               }
+               
+               private var hitArea:Shape;
+               
+               /**
+                *  @copy org.apache.royale.core.IBead#strand
+                *  
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion Royale 0.0
+         *  @royaleignorecoercion org.apache.royale.core.WrappedHTMLElement
+                */
+               override public function set strand(value:IStrand):void
+               {
+                       super.strand = value;
+                       
+                       drawView(hitArea.graphics, 0xDD0000);
+                       drawView(upView.graphics, 0xCCCCCC);
+                       drawView(downView.graphics, 0x808080);
+                       drawView(overView.graphics, 0xEEEEEE);
+                       
+            var button:SimpleButton = IChild(value).$displayObject as 
SimpleButton;
+                       button.upState = upView;
+                       button.downState = downView;
+                       button.overState = overView;
+                       button.hitTestState = hitArea;
+                       
+                       
IEventDispatcher(value).addEventListener("widthChanged",sizeChangeHandler);
+                       
IEventDispatcher(value).addEventListener("heightChanged",sizeChangeHandler);    
                                
+               }
+               
+               private var upView:Shape;
+               private var downView:Shape;
+               private var overView:Shape;
+               
+               /**
+                * @private
+                */
+               private function sizeChangeHandler( event:Event ) : void
+               {
+                       drawView(hitArea.graphics, 0xDD0000);
+                       drawView(upView.graphics, 0xCCCCCC);
+                       drawView(downView.graphics, 0x808080);
+                       drawView(overView.graphics, 0xEEEEEE);
+               }
+       }
+}
diff --git 
a/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/beads/SliderView.as
 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/beads/SliderView.as
new file mode 100644
index 0000000..cc18c9d
--- /dev/null
+++ 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/beads/SliderView.as
@@ -0,0 +1,172 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.vivid.beads
+{
+       COMPILE::SWF {
+               import flash.display.DisplayObject;
+               import flash.display.Sprite;
+       }
+       
+    import org.apache.royale.html.beads.ISliderView;
+    import org.apache.royale.core.BeadViewBase;
+    import org.apache.royale.core.IBead;
+    import org.apache.royale.core.IBeadLayout;
+    import org.apache.royale.core.IBeadModel;
+    import org.apache.royale.core.IBeadView;
+    import org.apache.royale.core.IRangeModel;
+    import org.apache.royale.core.IStrand;
+    import org.apache.royale.core.IUIBase;
+    import org.apache.royale.core.UIBase;
+    import org.apache.royale.core.ValuesManager;
+    import org.apache.royale.events.Event;
+    import org.apache.royale.events.IEventDispatcher;
+    import org.apache.royale.html.Button;
+    import org.apache.royale.html.TextButton;
+       
+       /**
+        *  The SliderView class creates the visual elements of the 
org.apache.royale.html.Slider 
+        *  component. The Slider has a track and a thumb control which are 
also created with view beads.
+        *  
+        *  @viewbead
+        *  @langversion 3.0
+        *  @playerversion Flash 10.2
+        *  @playerversion AIR 2.6
+        *  @productversion Royale 0.0
+        */
+       public class SliderView extends BeadViewBase implements ISliderView, 
IBeadView
+       {
+               /**
+                *  constructor.
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion Royale 0.0
+                */
+               public function SliderView()
+               {
+               }
+               
+               private var rangeModel:IRangeModel;
+               
+               /**
+                *  @copy org.apache.royale.core.IBead#strand
+                *  
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion Royale 0.0
+                */
+               override public function set strand(value:IStrand):void
+               {
+                       super.strand = value;
+                       
+                       var layout:IBeadLayout = 
_strand.getBeadByType(IBeadLayout) as IBeadLayout;
+                       if (layout == null) {
+                               var klass:Class = 
ValuesManager.valuesImpl.getValue(_strand, "iBeadLayout");
+                               _strand.addBead(new klass() as IBead);
+                       }
+                       
+                       COMPILE::SWF {
+                               var s:UIBase = UIBase(_strand);
+                               
+                               _track = new Button();
+                               _track.addBead(new 
(ValuesManager.valuesImpl.getValue(_strand, "iTrackView")) as IBead);
+                               _track.className = "SliderTrack";
+                               s.addElement(_track);
+                               
+                               _thumb = new TextButton();
+                               _thumb.text = '\u29BF';
+                               _thumb.addBead(new 
(ValuesManager.valuesImpl.getValue(_strand, "iThumbView")) as IBead);
+                               _thumb.className = "SliderThumb";
+                               s.addElement(_thumb);
+                               
+                       }
+                       COMPILE::JS {
+                               _track = new Button();
+                               _track.className = "SliderTrack";
+                               host.addElement(_track);
+                               
+                               _thumb = new TextButton();
+                               _thumb.className = "SliderThumb";
+                               _thumb.text = '\u29BF';
+                               host.addElement(_thumb);
+                       }
+                       
+                       rangeModel = _strand.getBeadByType(IBeadModel) as 
IRangeModel;
+
+                       var rm:IEventDispatcher = rangeModel as 
IEventDispatcher;
+                       
+                       // listen for changes to the model and adjust the UI 
accordingly.
+                       rm.addEventListener("valueChange",modelChangeHandler);
+                       rm.addEventListener("minimumChange",modelChangeHandler);
+                       rm.addEventListener("maximumChange",modelChangeHandler);
+                       
rm.addEventListener("stepSizeChange",modelChangeHandler);
+                       
rm.addEventListener("snapIntervalChange",modelChangeHandler);
+                       
+                       (_strand as IEventDispatcher).dispatchEvent(new 
Event("layoutNeeded"));
+               }
+               
+               private var _track:Button;
+               private var _thumb:TextButton;
+               
+               
+               /**
+                *  The track component.
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion Royale 0.0
+                */
+               public function get track():IUIBase
+               {
+                       return _track;
+               }
+               
+               /**
+                *  The thumb component.
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion Royale 0.0
+                */
+               public function get thumb():IUIBase
+               {
+                       return _thumb;
+               }
+               
+               /**
+                * @royaleignorecoercion org.apache.royale.core.UIBase
+                */
+               private function get host():UIBase
+               {
+                       return _strand as UIBase;
+               }
+               
+               /**
+                * @private
+                */
+               private function modelChangeHandler( event:Event ) : void
+               {
+                       (_strand as IEventDispatcher).dispatchEvent(new 
Event("layoutNeeded"));
+               }
+       }
+}
diff --git 
a/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/supportClasses/ITextField.as
 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/supportClasses/ITextField.as
new file mode 100644
index 0000000..100b523
--- /dev/null
+++ 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/supportClasses/ITextField.as
@@ -0,0 +1,68 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.vivid.supportClasses
+{
+    /**
+     *  ITextField is the interface that all text vivid classes.
+     *  It's used mainly in 
org.apache.royale.vivid.supportClasses.TextFieldBase
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 9.2
+     */
+    public interface ITextField
+    {
+        COMPILE::JS
+        {
+            /**
+            * the textNode
+            *
+            * @langversion 3.0
+            * @playerversion Flash 10.2
+            * @playerversion AIR 2.6
+            * @productversion Royale 0.9.2
+            */
+            function get textNode():Text;
+            function set textNode(value:Text):void;
+
+            /**
+            * the input
+            *
+            * @langversion 3.0
+            * @playerversion Flash 10.2
+            * @playerversion AIR 2.6
+            * @productversion Royale 0.9.2
+            */
+            function get input():HTMLInputElement;
+            function set input(value:HTMLInputElement):void;
+
+            /**
+            * the label
+            *
+            * @langversion 3.0
+            * @playerversion Flash 10.2
+            * @playerversion AIR 2.6
+            * @productversion Royale 0.9.2
+            */
+            function get label():HTMLLabelElement;
+            function set label(value:HTMLLabelElement):void;
+        }
+    }
+}
diff --git 
a/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/supportClasses/TextFieldBase.as
 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/supportClasses/TextFieldBase.as
new file mode 100644
index 0000000..868b6be
--- /dev/null
+++ 
b/frameworks/projects/Vivid/src/main/royale/org/apache/royale/vivid/supportClasses/TextFieldBase.as
@@ -0,0 +1,154 @@
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.vivid.supportClasses
+{
+       import org.apache.royale.events.Event;
+       import org.apache.royale.html.TextInput;
+    
+    import org.apache.royale.vivid.supportClasses.ITextField;
+    
+    COMPILE::JS
+    {
+        import goog.events;
+        import org.apache.royale.core.WrappedHTMLElement;        
+    }
+    
+    /**
+     *  The TextFieldBase class is the base class for TextField and TextArea 
Vivid controls
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.2
+     */    
+       public class TextFieldBase extends TextInput implements ITextField
+       {
+        /**
+         *  Constructor.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.2
+         */
+               public function TextFieldBase()
+               {
+                       super();
+               }
+
+        COMPILE::JS
+        {
+            private var _textNode:Text;
+            /**
+             *  @copy 
org.apache.royale.vivid.supportClasses.ITextField#textNode
+             *
+             *  @langversion 3.0
+             *  @playerversion Flash 10.2
+             *  @playerversion AIR 2.6
+             *  @productversion Royale 0.9.2
+             */
+            public function get textNode():Text
+            {
+                return _textNode;
+            }
+
+            public function set textNode(value:Text):void
+            {
+                _textNode = value;
+            }
+
+            private var _input:HTMLInputElement;
+            /**
+             *  @copy org.apache.royale.vivid.supportClasses.ITextField#input
+             *
+             *  @langversion 3.0
+             *  @playerversion Flash 10.2
+             *  @playerversion AIR 2.6
+             *  @productversion Royale 0.9.2
+             */
+            public function get input():HTMLInputElement
+            {
+                return _input;
+            }
+
+            public function set input(value:HTMLInputElement):void
+            {
+                _input = value;
+            }
+
+            private var _label:HTMLLabelElement;
+            /**
+             *  @copy org.apache.royale.vivid.supportClasses.ITextField#label
+             *
+             *  @langversion 3.0
+             *  @playerversion Flash 10.2
+             *  @playerversion AIR 2.6
+             *  @productversion Royale 0.9.2
+             */
+            public function get label():HTMLLabelElement
+            {
+                return _label;
+            }
+
+            public function set label(value:HTMLLabelElement):void
+            {
+                _label = value;
+            }
+        }
+
+        COMPILE::JS
+        /**
+                *  override UIBase to affect positioner instead of element
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion Royale 0.9.2
+                */
+               override protected function setClassName(value:String):void
+               {
+                       positioner.className = value;           
+               }
+
+        private var _isInvalid:Boolean = false;
+        /**
+                *  A boolean flag to activate "is-invalid" effect selector.
+         *  Defines the textfield as invalid on initial load.
+         *  Optional
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion Royale 0.9.2
+                */
+        public function get isInvalid():Boolean
+        {
+            return _isInvalid;
+        }
+        public function set isInvalid(value:Boolean):void
+        {
+            _isInvalid = value;
+
+            COMPILE::JS
+            {
+                positioner.classList.toggle("is-invalid", _isInvalid);
+                typeNames = positioner.className;
+            }
+        }
+       }
+}
diff --git a/frameworks/projects/VividBlueTheme/.vscode/launch.json 
b/frameworks/projects/VividBlueTheme/.vscode/launch.json
new file mode 100644
index 0000000..5dfb672
--- /dev/null
+++ b/frameworks/projects/VividBlueTheme/.vscode/launch.json
@@ -0,0 +1,21 @@
+{
+    "version": "0.2.0",
+    "configurations": [
+        {
+            "name": "Launch Chrome against debug.html, with sourcemaps",
+            "type": "chrome",
+            "request": "launch",
+            "file": 
"${workspaceRoot}/target/javascript/bin/js-debug/index.html",
+            "sourceMaps": true,
+            "preLaunchTask": "mvn"
+        },
+        {
+            "name": "Launch Firefox against debug.html, with sourcemaps",
+            "type": "firefox",
+            "request": "launch",
+            "file": 
"${workspaceRoot}/target/javascript/bin/js-debug/index.html",
+            "sourceMaps": true,
+            "preLaunchTask": "mvn"
+        }
+    ]
+}
diff --git a/frameworks/projects/VividBlueTheme/.vscode/settings.json 
b/frameworks/projects/VividBlueTheme/.vscode/settings.json
new file mode 100644
index 0000000..1069e6c
--- /dev/null
+++ b/frameworks/projects/VividBlueTheme/.vscode/settings.json
@@ -0,0 +1,3 @@
+{
+    "nextgenas.sdk.framework": 
"/Users/carlosrovira/Dev/Royale/Sdks/apache-royale-0.9.1"
+}
\ No newline at end of file
diff --git a/frameworks/projects/VividBlueTheme/.vscode/tasks.json 
b/frameworks/projects/VividBlueTheme/.vscode/tasks.json
new file mode 100644
index 0000000..5d6198d
--- /dev/null
+++ b/frameworks/projects/VividBlueTheme/.vscode/tasks.json
@@ -0,0 +1,8 @@
+{
+       // for the documentation about the tasks.json format
+       "version": "0.1.0",
+       "command": "mvn",
+       "args": ["clean", "install", "-DskipTests"],
+       "isShellCommand": true,
+       "showOutput": "always"
+}
\ No newline at end of file
diff --git a/frameworks/projects/VividBlueTheme/asconfig.json 
b/frameworks/projects/VividBlueTheme/asconfig.json
new file mode 100644
index 0000000..d2773a4
--- /dev/null
+++ b/frameworks/projects/VividBlueTheme/asconfig.json
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ {
+    "config": "royale",
+    "type": "lib",
+    "compilerOptions": {
+        "debug": true,
+        "targets": [
+            "JSRoyale",
+            "SWF"
+        ],
+        "include-classes": [
+            "VividBlueThemeClasses"
+        ],
+        "include-sources": [
+            "src/main/royale"
+        ],
+        "output": "target/VividBlueThemeClasses.swc"
+    }
+}
diff --git a/frameworks/projects/VividBlueTheme/build.xml 
b/frameworks/projects/VividBlueTheme/build.xml
new file mode 100644
index 0000000..2f0a79f
--- /dev/null
+++ b/frameworks/projects/VividBlueTheme/build.xml
@@ -0,0 +1,133 @@
+<?xml version="1.0"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
+
+<project name="VividBlueTheme" default="main" basedir=".">
+    <property name="ROYALE_HOME" location="../../.."/>
+    
+    <property file="${ROYALE_HOME}/env.properties"/>
+    <property environment="env"/>
+    <property file="${ROYALE_HOME}/build.properties"/>
+    <property name="ROYALE_HOME" value="${ROYALE_HOME}"/>
+    
+    <property name="target.name" value="${ant.project.name}.swc" />
+    
+    <!-- doesn't contain compiled files so only need to compile JS version -->
+    <target name="main" 
depends="clean,check-compiler,compile,compile-js,copy-swc,test" 
description="Full build of ${ant.project.name}.swc">
+    </target>
+    
+    <target name="compile-js">
+        <!-- doesn't contain compiled files so only need to compile JS version
+        <ant 
dir="${ROYALE_HOME}/frameworks/js/projects/${ant.project.name}JS/" 
inheritAll="false" >
+            <property name="ROYALE_SWF_COMPILER_HOME" 
value="${ROYALE_SWF_COMPILER_HOME}"/>
+            <property name="ROYALE_COMPILER_HOME" 
value="${ROYALE_COMPILER_HOME}"/>
+            <property name="ROYALE_HOME" value="${ROYALE_HOME}"/>
+        </ant>
+         -->
+    </target>
+    
+    <target name="copy-swc" if="env.AIR_HOME">
+        <copy file="${basedir}/target/${target.name}" 
tofile="${ROYALE_HOME}/frameworks/libs/${target.name}" />
+    </target>
+    
+    <target name="check-for-tests" >
+        <condition property="skip-tests" >
+            <not>
+                <available file="${basedir}/src/test/royale/build.xml" />
+            </not>
+        </condition>
+    </target>
+    
+    <target name="test" depends="check-for-tests" unless="skip-tests">
+        <ant dir="src/test/royale" />
+    </target>
+    
+    <target name="clean">
+        <delete failonerror="false">
+            <fileset dir="${ROYALE_HOME}/frameworks/libs">
+                <include name="${target.name}"/>
+            </fileset>
+        </delete>
+        <delete failonerror="false" includeemptydirs="true">
+            <fileset dir="${basedir}/target">
+                <include name="**/**"/>
+            </fileset>
+        </delete>
+        <antcall target="clean-tests" />
+    </target>
+    
+    <target name="clean-tests" depends="check-for-tests" unless="skip-tests">
+        <ant dir="src/test/royale" target="clean"/>
+    </target>
+    
+    <target name="compile" description="Compiles .as files into .swc" 
if="env.AIR_HOME">
+        <echo message="Compiling libs/${ant.project.name}.swc"/>
+        <echo message="ROYALE_HOME: ${ROYALE_HOME}"/>
+        <echo message="ROYALE_SWF_COMPILER_HOME: ${ROYALE_SWF_COMPILER_HOME}"/>
+        <echo message="ROYALE_COMPILER_HOME: ${ROYALE_COMPILER_HOME}"/>
+        
+        <java jar="${ROYALE_COMPILER_HOME}/lib/compc.jar" fork="true" >
+            <jvmarg value="-Xmx384m" />
+            <jvmarg value="-Dsun.io.useCanonCaches=false" />
+            <jvmarg value="-Droyalelib=${ROYALE_HOME}/frameworks" />
+            <arg value="+royalelib=${ROYALE_HOME}/frameworks" />
+            <arg value="+playerglobal.version=${playerglobal.version}" />
+            <arg value="+env.AIR_HOME=${env.AIR_HOME}" />
+            <arg value="-compiler.strict-xml=true" />
+            <arg value="-compiler.targets=SWF" />
+            <arg value="-output=${basedir}/target/${target.name}" />
+            <arg 
value="-load-config=${basedir}/src/main/config/compile-swf-config.xml" />
+            <arg 
value="-js-load-config=${ROYALE_HOME}/frameworks/js-config.xml" />
+            <arg 
value="-js-load-config+=${basedir}/../../js/projects/${ant.project.name}JS/src/main/config/compile-js-config.xml"
 />
+        </java>
+    </target>
+    
+    <target name="check-compiler" 
depends="check-compiler-home,check-transpiler-home">
+        <path id="lib.path">
+            <fileset dir="${ROYALE_COMPILER_HOME}/lib" 
includes="compiler-royaleTasks.jar"/>
+        </path>
+        <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
+    </target>
+    
+    <target name="check-compiler-home"
+        description="Set ROYALE_SWF_COMPILER_HOME to point at the compiler.">
+        
+        <available file="${ROYALE_HOME}/lib/compiler-mxmlc.jar"
+        type="file"
+        property="ROYALE_SWF_COMPILER_HOME"
+        value="${ROYALE_HOME}"/>
+        
+        <fail message="ROYALE_SWF_COMPILER_HOME must be set to a folder with a 
lib sub-folder containing compiler-mxmlc.jar such as the compiler folder in 
royale-compiler repo or the root of a Royale SDK"
+        unless="ROYALE_SWF_COMPILER_HOME"/>
+    </target>
+    
+    <target name="check-transpiler-home"
+        description="Set ROYALE_COMPILER_HOME to point at the cross-compiler.">
+        
+        <available file="${ROYALE_HOME}/js/lib/jsc.jar"
+        type="file"
+        property="ROYALE_COMPILER_HOME"
+        value="${ROYALE_HOME}/js"/>
+        
+        <fail message="ROYALE_COMPILER_HOME must be set to a folder with a lib 
sub-folder containing jsc.jar such as the compiler-jx folder in royale-compiler 
repo or the js folder of a Royale SDK"
+        unless="ROYALE_COMPILER_HOME"/>
+    </target>
+    
+</project>
diff --git a/frameworks/projects/VividBlueTheme/pom.xml 
b/frameworks/projects/VividBlueTheme/pom.xml
new file mode 100644
index 0000000..92b6054
--- /dev/null
+++ b/frameworks/projects/VividBlueTheme/pom.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+<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.apache.royale.framework</groupId>
+    <artifactId>projects</artifactId>
+    <version>0.9.2-SNAPSHOT</version>
+  </parent>
+
+  <artifactId>VividBlueTheme</artifactId>
+  <version>0.9.2-SNAPSHOT</version>
+  <packaging>swc</packaging>
+
+  <name>Apache Royale: Framework: Libs: VividBlueTheme</name>
+
+  <build>
+    <sourceDirectory>src/main/royale</sourceDirectory>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.royale.compiler</groupId>
+        <artifactId>royale-maven-plugin</artifactId>
+        <version>${royale.compiler.version}</version>
+        <extensions>true</extensions>
+        <configuration>
+          <includeClasses>
+            <includeClass>VividBlueThemeClasses</includeClass>
+          </includeClasses>
+          <includeFiles>
+            <include-file>
+              <name>defaults.css</name>
+              <path>../src/main/resources/defaults.css</path>
+            </include-file>
+            <include-file>
+              <name>TextField.css</name>
+              <path>../src/main/resources/TextField.css</path>
+            </include-file>
+          </includeFiles>
+          <includeLookupOnly>true</includeLookupOnly>
+          <!--<allowSubclassOverrides>true</allowSubclassOverrides>-->
+          <skipExtern>true</skipExtern>
+          
<!--<additionalCompilerOptions>-compiler.fxg-base-class=flash.display.Sprite</additionalCompilerOptions>-->
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>
diff --git 
a/frameworks/projects/VividBlueTheme/src/main/config/compile-swf-config.xml 
b/frameworks/projects/VividBlueTheme/src/main/config/compile-swf-config.xml
new file mode 100644
index 0000000..e4dd958
--- /dev/null
+++ b/frameworks/projects/VividBlueTheme/src/main/config/compile-swf-config.xml
@@ -0,0 +1,91 @@
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+<royale-config>
+
+    <compiler>
+        <accessible>false</accessible>
+        
+        <!-- build only SWF version since no compiled code -->
+        <targets>
+            <target>SWF</target>
+        </targets>
+        <strict-xml>true</strict-xml>
+
+        <external-library-path>
+            
<path-element>${env.AIR_HOME}/frameworks/libs/air/airglobal.swc</path-element>
+        </external-library-path>
+        
+        <allow-subclass-overrides>true</allow-subclass-overrides>
+               <mxml>
+                       <children-as-data>true</children-as-data>
+               </mxml>
+               
<binding-value-change-event>org.apache.royale.events.ValueChangeEvent</binding-value-change-event>
+               
<binding-value-change-event-kind>org.apache.royale.events.ValueChangeEvent</binding-value-change-event-kind>
+               
<binding-value-change-event-type>valueChange</binding-value-change-event-type>
+
+        <define>
+            <name>COMPILE::SWF</name>
+            <value>true</value>
+        </define>
+        <define>
+            <name>COMPILE::JS</name>
+            <value>false</value>
+        </define>
+
+        <keep-as3-metadata>
+          <name>Bindable</name>
+          <name>Managed</name>
+          <name>ChangeEvent</name>
+          <name>NonCommittingChangeEvent</name>
+          <name>Transient</name>
+        </keep-as3-metadata>
+         
+        <locale/>
+        
+        <library-path/>
+
+        <namespaces>
+        </namespaces>
+        
+        <source-path>
+            <path-element>../royale</path-element>
+        </source-path>
+        
+        <warn-no-constructor>false</warn-no-constructor>
+    </compiler>
+    
+    <include-file>
+        <name>defaults.css</name>
+        <path>../resources/defaults.css</path>
+    </include-file>
+    <include-file>
+        <name>TextField.css</name>
+        <path>../resources/TextField.css</path>
+    </include-file>
+
+    <include-lookup-only>true</include-lookup-only>
+    
+    <include-classes>
+        <class>VividBlueThemeClasses</class>
+    </include-classes>
+    
+    <target-player>${playerglobal.version}</target-player>
+       
+
+</royale-config>
diff --git 
a/frameworks/projects/VividBlueTheme/src/main/resources/TextField.css 
b/frameworks/projects/VividBlueTheme/src/main/resources/TextField.css
new file mode 100644
index 0000000..4c5e368
--- /dev/null
+++ b/frameworks/projects/VividBlueTheme/src/main/resources/TextField.css
@@ -0,0 +1,75 @@
+/*
+ *
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *
+ */
+
+@namespace "library://ns.apache.org/royale/vivid";
+/*@namespace svg "library://ns.apache.org/royale/svg";*/
+
+/*
+* Vivid TextField
+*/
+TextField {
+       position: relative;
+       display: inline-block;
+       box-sizing: border-box;
+       width: 300px;
+       max-width: 100%;
+       margin: 0;
+}
+
+.vTextField--input {
+       font-size: 16px;
+       font-family: 'Lato', sans-serif;
+
+       border: none;
+       border-bottom: 2px solid;
+       border-bottom-color: #ff0000;
+       display: block;
+       margin: 0;
+       padding: 4 0;
+       width: 100px;
+       background: transparent;
+       text-align: left;
+       color: inherit;
+       outline: none;
+}
+
+.vTextField--label {
+       bottom: 0;
+       color: #ff0000;
+       font-size: 13px;
+       left: 0;
+       right: 0;
+       pointer-events: none;
+       position: absolute;
+       display: block;
+       width: 100%;
+       overflow: hidden;
+       white-space: nowrap;
+       text-align: left;
+}
+
+/*
+    padding: 5px;
+    border: solid 1px #666666;
+    border-radius: 6px;
+    color: #333333;
+:hover 
+    padding: 5px;
+    background-color: #DFDFDF;
+*/
\ No newline at end of file
diff --git a/frameworks/projects/VividBlueTheme/src/main/resources/defaults.css 
b/frameworks/projects/VividBlueTheme/src/main/resources/defaults.css
new file mode 100644
index 0000000..3d376ac
--- /dev/null
+++ b/frameworks/projects/VividBlueTheme/src/main/resources/defaults.css
@@ -0,0 +1,33 @@
+/*
+ *
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *
+ */
+
+ @namespace "http://www.w3.org/1999/xhtml";;
+
+ .royale *, . royale *:before, . royale *:after {
+        -moz-box-sizing: border-box;
+        -webkit-box-sizing: border-box;
+        box-sizing: border-box;
+ }
+ 
+ .page-content
+ {
+        padding: 10px;
+        margin: 10px;
+ }
+ 
\ No newline at end of file
diff --git 
a/frameworks/projects/VividBlueTheme/src/main/royale/VividBlueThemeClasses.as 
b/frameworks/projects/VividBlueTheme/src/main/royale/VividBlueThemeClasses.as
new file mode 100644
index 0000000..9808ec1
--- /dev/null
+++ 
b/frameworks/projects/VividBlueTheme/src/main/royale/VividBlueThemeClasses.as
@@ -0,0 +1,33 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package
+{
+
+    /**
+     *  @private
+     *  This class is used to link additional classes into vivid.swc
+     *  beyond those that are found by dependecy analysis starting
+     *  from the classes specified in manifest.xml.
+     */
+    internal class VividBlueThemeClasses
+    {
+        
+    }
+
+}
\ No newline at end of file
diff --git a/frameworks/projects/pom.xml b/frameworks/projects/pom.xml
index c1d5cc1..55fb559 100644
--- a/frameworks/projects/pom.xml
+++ b/frameworks/projects/pom.xml
@@ -60,6 +60,8 @@
     <module>Text</module>
     <module>TLF</module>
     <module>RoyaleSite</module>
+    <module>Vivid</module>
+    <module>VividBlueTheme</module>
   </modules>
 
   <profiles>

-- 
To stop receiving notification emails like this one, please contact
carlosrov...@apache.org.

Reply via email to