Repository: flex-asjs Updated Branches: refs/heads/mdl-radiobutton cf38a5b90 -> 8ba115891
MDLRadioButton simple project only with MDL radio button example Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/8ba11589 Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/8ba11589 Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/8ba11589 Branch: refs/heads/mdl-radiobutton Commit: 8ba1158916b5bd009990218fc788e9cdc53e5329 Parents: cf38a5b Author: Carlos Rovira <[email protected]> Authored: Wed Feb 1 19:41:04 2017 +0100 Committer: Carlos Rovira <[email protected]> Committed: Wed Feb 1 19:41:04 2017 +0100 ---------------------------------------------------------------------- .../flexjs/MDLRadioButton/.vscode/launch.json | 21 ++++ .../flexjs/MDLRadioButton/.vscode/tasks.json | 10 ++ examples/flexjs/MDLRadioButton/asconfig.json | 14 +++ examples/flexjs/MDLRadioButton/build.xml | 63 ++++++++++++ examples/flexjs/MDLRadioButton/pom.xml | 91 ++++++++++++++++ .../MDLRadioButton/src/main/flex/App.mxml | 58 +++++++++++ .../MDLRadioButton/src/main/flex/Toggles.mxml | 103 +++++++++++++++++++ .../main/resources/mdl-js-index-template.html | 33 ++++++ .../src/main/resources/mdl-styles.css | 65 ++++++++++++ .../apache/flex/mdl/FooterDropDownSection.as | 103 +++++++++++++++++++ .../org/apache/flex/mdl/FooterMiddleSection.as | 103 +++++++++++++++++++ 11 files changed, 664 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ba11589/examples/flexjs/MDLRadioButton/.vscode/launch.json ---------------------------------------------------------------------- diff --git a/examples/flexjs/MDLRadioButton/.vscode/launch.json b/examples/flexjs/MDLRadioButton/.vscode/launch.json new file mode 100644 index 0000000..fe64613 --- /dev/null +++ b/examples/flexjs/MDLRadioButton/.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" + } + ] +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ba11589/examples/flexjs/MDLRadioButton/.vscode/tasks.json ---------------------------------------------------------------------- diff --git a/examples/flexjs/MDLRadioButton/.vscode/tasks.json b/examples/flexjs/MDLRadioButton/.vscode/tasks.json new file mode 100644 index 0000000..c207148 --- /dev/null +++ b/examples/flexjs/MDLRadioButton/.vscode/tasks.json @@ -0,0 +1,10 @@ +{ + // See https://go.microsoft.com/fwlink/?LinkId=733558 + // for the documentation about the tasks.json format + //"--flexHome=/Users/carlosrovira/Dev/Flex/sdks/flexjs-0.8.0" + "version": "0.1.0", + "command": "mvn", + "args": ["clean", "install", "-DskipTests"], + "isShellCommand": true, + "showOutput": "always" +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ba11589/examples/flexjs/MDLRadioButton/asconfig.json ---------------------------------------------------------------------- diff --git a/examples/flexjs/MDLRadioButton/asconfig.json b/examples/flexjs/MDLRadioButton/asconfig.json new file mode 100644 index 0000000..d15de04 --- /dev/null +++ b/examples/flexjs/MDLRadioButton/asconfig.json @@ -0,0 +1,14 @@ +{ + "config": "flex", + "compilerOptions": { + "debug": true, + "source-map": true, + "js-output-type": "flexjs", + "output": "./target/javascript" + }, + "additionalOptions": "-html-template=src/main/resources/mdl-js-index-template.html", + "files": + [ + "src/main/flex/App.mxml" + ] +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ba11589/examples/flexjs/MDLRadioButton/build.xml ---------------------------------------------------------------------- diff --git a/examples/flexjs/MDLRadioButton/build.xml b/examples/flexjs/MDLRadioButton/build.xml new file mode 100644 index 0000000..019d0d3 --- /dev/null +++ b/examples/flexjs/MDLRadioButton/build.xml @@ -0,0 +1,63 @@ +<?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="MDLRadioButton" default="main" basedir="."> + <property name="FLEXJS_HOME" location="../../.."/> + <property name="example" value="App" /> + + <property file="${FLEXJS_HOME}/env.properties"/> + <property environment="env"/> + <property file="${FLEXJS_HOME}/build.properties"/> + <property name="FLEX_HOME" value="${FLEXJS_HOME}"/> + <property name="opt1_arg" value="-compiler.exclude-defaults-css-files=HTML.swc:defaults.css" /> + <property name="opt2_arg" value="-html-template=${basedir}/src/main/resources/mdl-js-index-template.html" /> + + <include file="${basedir}/../../build_example.xml" /> + + <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}"> + <mkdir dir="${basedir}/bin/js-debug/assets" /> + <copy todir="${basedir}/bin/js-debug/assets" > + <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" > + <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> + + + +</project> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ba11589/examples/flexjs/MDLRadioButton/pom.xml ---------------------------------------------------------------------- diff --git a/examples/flexjs/MDLRadioButton/pom.xml b/examples/flexjs/MDLRadioButton/pom.xml new file mode 100644 index 0000000..3df21fd --- /dev/null +++ b/examples/flexjs/MDLRadioButton/pom.xml @@ -0,0 +1,91 @@ +<?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.flex.flexjs.examples</groupId> + <artifactId>examples-flexjs</artifactId> + <version>0.8.0-SNAPSHOT</version> + </parent> + + <artifactId>MDLRadioButton</artifactId> + <version>0.8.0-SNAPSHOT</version> + <packaging>swf</packaging> + + <name>Apache Flex - FlexJS: Examples: FlexJS: MDLRadioButton</name> + + <properties> + <!-- Customize MDL colors using this the tool at : https://getmdl.io/customize/index.html --> + <primary>indigo</primary> + <accent>pink</accent> + </properties> + + <build> + <sourceDirectory>src/main/flex</sourceDirectory> + <resources> + <resource> + <directory>src/main/resources</directory> + <filtering>true</filtering> + </resource> + </resources> + <plugins> + <plugin> + <groupId>org.apache.flex.flexjs.compiler</groupId> + <artifactId>flexjs-maven-plugin</artifactId> + <extensions>true</extensions> + <configuration> + <mainClass>App.mxml</mainClass> + <htmlTemplate>${basedir}/target/javascript/bin/js-debug/mdl-js-index-template.html</htmlTemplate> + <additionalCompilerOptions>-compiler.exclude-defaults-css-files=HTML-0.8.0-SNAPSHOT.swc:defaults.css</additionalCompilerOptions> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-war-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + </plugin> + </plugins> + </build> + + <dependencies> + <dependency> + <groupId>org.apache.flex.flexjs.framework</groupId> + <artifactId>MaterialDesignLite</artifactId> + <version>0.8.0-SNAPSHOT</version> + <type>swc</type> + </dependency> + + <!-- Needed for Flash compilation --> + <dependency> + <groupId>com.adobe.flash.framework</groupId> + <artifactId>playerglobal</artifactId> + <version>20.0</version> + <type>swc</type> + <scope>provided</scope> + </dependency> + </dependencies> + +</project> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ba11589/examples/flexjs/MDLRadioButton/src/main/flex/App.mxml ---------------------------------------------------------------------- diff --git a/examples/flexjs/MDLRadioButton/src/main/flex/App.mxml b/examples/flexjs/MDLRadioButton/src/main/flex/App.mxml new file mode 100644 index 0000000..2279189 --- /dev/null +++ b/examples/flexjs/MDLRadioButton/src/main/flex/App.mxml @@ -0,0 +1,58 @@ +<?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. + +--> +<mdl:Application xmlns:fx="http://ns.adobe.com/mxml/2009" + xmlns:js="library://ns.apache.org/flexjs/basic" + xmlns:mdl="library://ns.apache.org/flexjs/mdl" + xmlns:local="*"> + + <fx:Script> + <![CDATA[ + import org.apache.flex.mdl.materialIcons.MaterialIconType; + import org.apache.flex.events.MouseEvent; + + [Bindable] + public var counter6:int = 0; + + [Bindable] + public var counter7:int = 0; + ]]> + </fx:Script> + <fx:Style source="../../main/resources/mdl-styles.css"/> + + <js:valuesImpl> + <js:SimpleCSSValuesImpl /> + </js:valuesImpl> + + <js:initialView> + <mdl:Grid> + <mdl:RadioButton groupName="g1" text="Ripple 1" ripple="true" change="counter6++"/> + <mdl:RadioButton groupName="g1" text="Ripple 2" ripple="true" change="counter6++"/> + <mdl:RadioButton groupName="g1" text="Ripple 3" ripple="true" change="counter6++"/> + + <js:Label text="RadioButtons throw 'change' event {counter6} times"/> + + <mdl:RadioButton groupName="g2" text="Black" click="counter7++"/> + <mdl:RadioButton groupName="g2" text="White" click="counter7++"/> + <mdl:RadioButton groupName="g2" text="Red" click="counter7++"/> + + <js:Label text="RadioButtons throw 'click' event {counter7} times"/> + </mdl:Grid> + </js:initialView> +</mdl:Application> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ba11589/examples/flexjs/MDLRadioButton/src/main/flex/Toggles.mxml ---------------------------------------------------------------------- diff --git a/examples/flexjs/MDLRadioButton/src/main/flex/Toggles.mxml b/examples/flexjs/MDLRadioButton/src/main/flex/Toggles.mxml new file mode 100644 index 0000000..fc8db54 --- /dev/null +++ b/examples/flexjs/MDLRadioButton/src/main/flex/Toggles.mxml @@ -0,0 +1,103 @@ +<?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. + +--> +<mdl:TabBarPanel xmlns:fx="http://ns.adobe.com/mxml/2009" + xmlns:js="library://ns.apache.org/flexjs/basic" + xmlns:mdl="library://ns.apache.org/flexjs/mdl" + xmlns="http://www.w3.org/1999/xhtml"> + + <fx:Script> + <![CDATA[ + import org.apache.flex.mdl.materialIcons.MaterialIconType; + import org.apache.flex.events.MouseEvent; + + [Bindable] + public var counter:int = 0; + + [Bindable] + public var counter2:int = 0; + + [Bindable] + public var counter3:int = 0; + + [Bindable] + public var counter4:int = 0; + + [Bindable] + public var counter5:int = 0; + + [Bindable] + public var counter6:int = 0; + + [Bindable] + public var counter7:int = 0; + ]]> + </fx:Script> + + <mdl:beads> + <js:ContainerDataBinding/> + </mdl:beads> + + <mdl:Grid width="250"> + + <!-- Toggles :: https://getmdl.io/components/index.html#toggles-section --> + <mdl:CheckBox id="mdlchk" text="Disabled at start" change="counter++"/> + <js:Label text="Chebox throw 'change' event {counter} times"/> + <mdl:CheckBox id="mdlchk1" text="Selected and with Ripple" selected="true" ripple="true"/> + + <mdl:IconToggle dataMdlFor="mdlBoldIcon" click="counter2++"> + <mdl:materialIcon> + <mdl:MaterialIcon text="{MaterialIconType.FORMAT_BOLD}"/> + </mdl:materialIcon> + </mdl:IconToggle> + + <js:Label text="IconToggle throw 'click' event {counter2} times"/> + + <mdl:IconToggle dataMdlFor="mdlItalicIcon" change="counter3++"> + <mdl:materialIcon> + <mdl:MaterialIcon text="{MaterialIconType.FORMAT_ITALIC}"/> + </mdl:materialIcon> + </mdl:IconToggle> + + <js:Label text="IconToggle throw 'change' event {counter3} times"/> + + <mdl:Button raised="true" text="Change Switch Text Label" colored="true" click="s1.text = 'hello'"/> + <mdl:Switch id="s1" text="Switch" ripple="true" selected="true" change="counter4++" textChange="trace('hello?')"/> + + <js:Label text="Switch throw 'click' event {counter4} times"/> + + <mdl:Switch id="s2" text="Switch" click="counter5++"/> + + <js:Label text="Switch throw 'click' event {counter5} times"/> + + <mdl:RadioButton groupName="g1" text="Ripple 1" ripple="true" change="counter6++"/> + <mdl:RadioButton groupName="g1" text="Ripple 2" ripple="true" change="counter6++"/> + <mdl:RadioButton groupName="g1" text="Ripple 3" ripple="true" change="counter6++"/> + + <js:Label text="RadioButtons throw 'change' event {counter6} times"/> + + <mdl:RadioButton groupName="g2" text="Black" click="counter7++"/> + <mdl:RadioButton groupName="g2" text="White" click="counter7++"/> + <mdl:RadioButton groupName="g2" text="Red" click="counter7++"/> + + <js:Label text="RadioButtons throw 'click' event {counter7} times"/> + + </mdl:Grid> + +</mdl:TabBarPanel> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ba11589/examples/flexjs/MDLRadioButton/src/main/resources/mdl-js-index-template.html ---------------------------------------------------------------------- diff --git a/examples/flexjs/MDLRadioButton/src/main/resources/mdl-js-index-template.html b/examples/flexjs/MDLRadioButton/src/main/resources/mdl-js-index-template.html new file mode 100644 index 0000000..35e4c3a --- /dev/null +++ b/examples/flexjs/MDLRadioButton/src/main/resources/mdl-js-index-template.html @@ -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. +--> +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <meta name="Custom Template for injecting custom style CSS"> + <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0""> + <link rel="stylesheet" type="text/css" href="${application}.css"> + <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons"> + <link rel="stylesheet" href="https://code.getmdl.io/1.3.0/material.${primary}-${accent}.min.css"> + <script defer src="https://code.getmdl.io/1.3.0/material.min.js"></script> +${head} +</head> +<body> +${body} +</body> +</html> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ba11589/examples/flexjs/MDLRadioButton/src/main/resources/mdl-styles.css ---------------------------------------------------------------------- diff --git a/examples/flexjs/MDLRadioButton/src/main/resources/mdl-styles.css b/examples/flexjs/MDLRadioButton/src/main/resources/mdl-styles.css new file mode 100644 index 0000000..e2b6574 --- /dev/null +++ b/examples/flexjs/MDLRadioButton/src/main/resources/mdl-styles.css @@ -0,0 +1,65 @@ +/* +//////////////////////////////////////////////////////////////////////////////// +// +// 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"; +@namespace js "library://ns.apache.org/flexjs/basic"; +@namespace mdl "library://ns.apache.org/flexjs/mdl"; + +.flexjs *, . flexjs *:before, . flexjs *:after { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +.page-content +{ + padding: 10px; + margin: 10px; +} + + +/* Grids Example */ +.demo-grid .mdl-cell { + box-sizing: border-box; + background-color: #BDBDBD; + height: 200px; + padding-left: 8px; + padding-top: 4px; + color: white; +} +.demo-grid .mdl-grid:first-of-type .mdl-cell { + height: 50px; +} + +/* center items in grid */ +.mdl-grid.center-items { + flex-direction: column; + align-items: center; +} + +/* make center items have some padding */ +.mdl-grid.center-items > .mdl-card { + margin: 10px; +} + + +/* Icons */ +.material-icons.orange600 { color: #FB8C00; } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ba11589/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/FooterDropDownSection.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/FooterDropDownSection.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/FooterDropDownSection.as new file mode 100644 index 0000000..63f7381 --- /dev/null +++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/FooterDropDownSection.as @@ -0,0 +1,103 @@ +//////////////////////////////////////////////////////////////////////////////// +// +// 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.flex.mdl +{ + import org.apache.flex.core.ContainerBase; + import org.apache.flex.mdl.supportClasses.IFooterSection; + + COMPILE::JS + { + import org.apache.flex.core.WrappedHTMLElement; + } + + /** + * The FooterDropDownSection class is a Container component capable of parenting other + * components + * + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion FlexJS 0.8 + */ + public class FooterDropDownSection extends ContainerBase implements IFooterSection + { + /** + * constructor. + * + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion FlexJS 0.8 + */ + public function FooterDropDownSection() + { + super(); + + className = ""; //set to empty string avoid 'undefined' output when no class selector is assigned by user; + } + + /** + * @flexjsignorecoercion org.apache.flex.core.WrappedHTMLElement + */ + COMPILE::JS + override protected function createElement():WrappedHTMLElement + { + typeNames = "mdl-mega-footer__drop-down-section"; + + element = document.createElement('div') as WrappedHTMLElement; + + positioner = element; + element.flexjs_wrapper = this; + + return element; + } + + /** + * Configuration depends on parent Footer. + * Check to see if is mega or mini. + * + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion FlexJS 0.8 + + COMPILE::JS + override public function addedToParent():void + { + super.addedToParent(); + + if(parent is FooterMiddleSection) + { + element.classList.remove(typeNames); + if(!Footer(parent).mini) + { + typeNames = "mdl-mega-footer__drop-down-section"; + } else + { + typeNames = "mdl-mini-footer__drop-down-section"; + } + element.classList.add(typeNames); + } + else + { + throw new Error("FooterDropDownSection can not be used if parent is not a MDL FooterMiddleSection component."); + } + }*/ + } +} http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ba11589/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/FooterMiddleSection.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/FooterMiddleSection.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/FooterMiddleSection.as new file mode 100644 index 0000000..e09f657 --- /dev/null +++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/FooterMiddleSection.as @@ -0,0 +1,103 @@ +//////////////////////////////////////////////////////////////////////////////// +// +// 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.flex.mdl +{ + import org.apache.flex.core.ContainerBase; + import org.apache.flex.mdl.supportClasses.IFooterSection; + + COMPILE::JS + { + import org.apache.flex.core.WrappedHTMLElement; + } + + /** + * The FooterMiddleSection class is a Container component capable of parenting other + * components + * + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion FlexJS 0.8 + */ + public class FooterMiddleSection extends ContainerBase implements IFooterSection + { + /** + * constructor. + * + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion FlexJS 0.8 + */ + public function FooterMiddleSection() + { + super(); + + className = ""; //set to empty string avoid 'undefined' output when no class selector is assigned by user; + } + + /** + * @flexjsignorecoercion org.apache.flex.core.WrappedHTMLElement + */ + COMPILE::JS + override protected function createElement():WrappedHTMLElement + { + typeNames = "mdl-mega-footer__middle-section"; + + element = document.createElement('div') as WrappedHTMLElement; + + positioner = element; + element.flexjs_wrapper = this; + + return element; + } + + /** + * Configuration depends on parent Footer. + * Check to see if is mega or mini. + * + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion FlexJS 0.8 + */ + COMPILE::JS + override public function addedToParent():void + { + super.addedToParent(); + + if(parent is Footer) + { + element.classList.remove(typeNames); + if(!Footer(parent).mini) + { + typeNames = "mdl-mega-footer__middle-section"; + } else + { + typeNames = "mdl-mini-footer__middle-section"; + } + element.classList.add(typeNames); + } + else + { + throw new Error("FooterMiddleSection can not be used if parent is not a MDL Footer component."); + } + } + } +}
