| Index: bower_components/core-layout-trbl/core-layout-trbl.html
|
| diff --git a/bower_components/core-layout-trbl/core-layout-trbl.html b/bower_components/core-layout-trbl/core-layout-trbl.html
|
| deleted file mode 100644
|
| index c9ea2c606ea804d3769089eb2f623aec96d42031..0000000000000000000000000000000000000000
|
| --- a/bower_components/core-layout-trbl/core-layout-trbl.html
|
| +++ /dev/null
|
| @@ -1,269 +0,0 @@
|
| -<!--
|
| -Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
|
| -This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
|
| -The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
|
| -The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
|
| -Code distributed by Google as part of the polymer project is also
|
| -subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
|
| --->
|
| -
|
| -<!--
|
| -`<core-layout-trbl>` arranges nodes horizontally via absolute positioning.
|
| -Set the `vertical` attribute (boolean) to arrange vertically instead.
|
| -
|
| -`<core-layout-trbl>` arranges it's <b>sibling elements</b>, not
|
| -it's children.
|
| -
|
| -One arranged node may be marked as elastic by giving it a `flex`
|
| -attribute (boolean).
|
| -
|
| -You may remove a node from layout by giving it a `nolayout`
|
| -attribute (boolean).
|
| -
|
| -CSS Notes:
|
| -
|
| -`padding` is ignored on the parent node.
|
| -`margin` is ignored on arranged nodes.
|
| -`min-width` is ignored on arranged nodes, use `min-width` on the parent node
|
| -instead.
|
| -
|
| -Example:
|
| -
|
| -Arrange three `div` into columns. `flex` attribute on Column Two makes that
|
| -column elastic.
|
| -
|
| - <core-layout-trbl></core-layout-trbl>
|
| - <div>Column One</div>
|
| - <div flex>Column Two</div>
|
| - <div>Column Three</div>
|
| -
|
| -Remember that `<core-layout-trbl>` arranges it's sibling elements, not it's children.
|
| -
|
| -If body has width 52 device pixels (in this case, ascii characters), call that 52px.
|
| -Column One has it's natural width of 12px (including border), Column Three has it's
|
| -natural width of 14px, body border uses 2px, and Column Two automatically uses the
|
| -remaining space: 24px.
|
| -
|
| - |- 52px -|
|
| - ----------------------------------------------------
|
| - ||Column One|| Column Two ||Column Three||
|
| - ----------------------------------------------------
|
| - |- 12px -||- (24px) -|| 14px -|
|
| -
|
| -As the parent node resizes, the elastic column reacts via CSS to adjust it's size.
|
| -No javascript is used during parent resizing, for best performance.
|
| -
|
| -Changes in content or sibling size are not handled automatically.
|
| -
|
| - ----------------------------------------------------------------
|
| - ||Column One| Column Two |Column Three||
|
| - ----------------------------------------------------------------
|
| -
|
| - --------------------------------------
|
| - ||Column One|Column Two|Column Three||
|
| - --------------------------------------
|
| -
|
| -Arrange in rows by adding the `vertical` attribute.
|
| -
|
| -Example:
|
| -
|
| - <core-layout-trbl vertical></core-layout-trbl>
|
| - <div>Row One</div>
|
| - <div flex>Row Two</div>
|
| - <div>Row Three</div>
|
| -
|
| -This setup will cause Row Two to stretch to fill the container.
|
| -
|
| - ----------- -----------
|
| - |---------| |---------|
|
| - | | | |
|
| - |Row One | |Row One |
|
| - | | | |
|
| - |---------| |---------|
|
| - | | | |
|
| - |Row Two | |Row Two |
|
| - | | | |
|
| - |---------| | |
|
| - | | | |
|
| - |Row Three| | |
|
| - | | |---------|
|
| - |---------| | |
|
| - ----------- |Row Three|
|
| - | |
|
| - |---------|
|
| - |---------|
|
| -
|
| -Layouts can be nested arbitrarily.
|
| -
|
| - <core-layout-trbl></core-layout-trbl>
|
| - <div>Menu</div>
|
| - <div flex>
|
| - <core-layout-trbl vertical></core-layout-trbl>
|
| - <div>Title</div>
|
| - <div>Toolbar</div>
|
| - <div flex>Main</div>
|
| - <div>Footer</div>
|
| - </div>
|
| -
|
| -Renders something like this
|
| -
|
| - --------------------------------
|
| - ||Menu ||Title ||
|
| - || ||-----------------||
|
| - || ||Toolbar ||
|
| - || ||-----------------||
|
| - || ||Main ||
|
| - || || ||
|
| - || ||-----------------||
|
| - || ||Footer ||
|
| - --------------------------------
|
| -
|
| -@group Polymer Core Elements
|
| -@element core-layout-trbl
|
| --->
|
| -<link rel="import" href="../polymer/polymer.html">
|
| -
|
| -<polymer-element name="core-layout-trbl" attributes="vertical">
|
| -
|
| - <template>
|
| -
|
| - <style>
|
| - :host {
|
| - display: none;
|
| - }
|
| - </style>
|
| -
|
| - </template>
|
| -
|
| - <script>
|
| -
|
| - Polymer('core-layout-trbl', {
|
| -
|
| - vertical: false,
|
| -
|
| - ready: function() {
|
| - this.setAttribute('nolayout', '');
|
| - },
|
| -
|
| - attached: function() {
|
| - this.asyncMethod(function() {
|
| - this.prepare();
|
| - this.layout();
|
| - });
|
| - },
|
| -
|
| - prepare: function() {
|
| - var parent = this.parentNode.host || this.parentNode;
|
| - // explicit position harmful on <body>
|
| - if (parent.localName !== 'body') {
|
| - // may recalc
|
| - var cs = window.getComputedStyle(parent);
|
| - if (cs.position === 'static') {
|
| - parent.style.position = 'relative';
|
| - }
|
| - //parent.style.overflow = 'hidden';
|
| - }
|
| - // changes will cause another recalc at next validation step
|
| - var stylize = this.stylize, vertical;
|
| - this.parentNode.childNodes.array().forEach(function(c, i) {
|
| - if (c.nodeType === Node.ELEMENT_NODE && !c.hasAttribute('nolayout')) {
|
| - stylize(c, {
|
| - position: 'absolute',
|
| - boxSizing: 'border-box',
|
| - MozBoxSizing: 'border-box',
|
| - });
|
| - // test for auto-vertical
|
| - if (vertical === undefined) {
|
| - vertical = (c.offsetWidth == 0 && c.offsetHeight !== 0);
|
| - }
|
| - }
|
| - });
|
| - this.vertical = this.vertical || vertical;
|
| - },
|
| -
|
| - /**
|
| - * Arrange sibling nodes end-to-end in one dimension.
|
| - *
|
| - * Arrangement is horizontal unless the `vertical`
|
| - * attribute is applied on this node.
|
| - *
|
| - * @method layout
|
| - */
|
| - layout: function() {
|
| - var parent = this.parentNode.host || this.parentNode;
|
| - var vertical = this.vertical;
|
| - var ww = 0, hh = 0, pre = [], fit, post = [];
|
| - var list = pre;
|
| - // gather element information (at most one recalc)
|
| - this.parentNode.childNodes.array().forEach(function(c, i) {
|
| - if (c.nodeType===Node.ELEMENT_NODE && !c.hasAttribute('nolayout')) {
|
| - var info = {
|
| - element: c,
|
| - w: c.offsetWidth,
|
| - h: c.offsetHeight
|
| - };
|
| - if (!c.hasAttribute('fit') && !c.hasAttribute('flex')) {
|
| - ww += c.offsetWidth;
|
| - hh += c.offsetHeight;
|
| - list.push(info);
|
| - } else {
|
| - fit = c;
|
| - list = post;
|
| - ww = hh = 0;
|
| - }
|
| - }
|
| - });
|
| - // update layout styles (invalidate, no recalc)
|
| - var v = 0;
|
| - var mxp = 0, myp = 0;
|
| - var stylize = this.stylize;
|
| - pre.forEach(function(info) {
|
| - if (vertical) {
|
| - stylize(info.element, {
|
| - top: v + 'px', right: mxp, height: info.h + 'px', left: mxp
|
| - });
|
| - } else {
|
| - stylize(info.element, {
|
| - top: myp, width: info.w + 'px', bottom: myp, left: v + 'px'
|
| - });
|
| - }
|
| - v += vertical ? info.h : info.w;
|
| - });
|
| - if (fit) {
|
| - if (vertical) {
|
| - stylize(fit, {
|
| - top: v + 'px', right: mxp, bottom: hh + 'px', left: mxp
|
| - });
|
| - } else {
|
| - stylize(fit, {
|
| - top: myp, right: ww + 'px', bottom: myp, left: v + 'px'
|
| - });
|
| - }
|
| - v = vertical ? hh : ww;
|
| - post.forEach(function(info) {
|
| - v -= vertical ? info.h : info.w;
|
| - if (vertical) {
|
| - stylize(info.element, {
|
| - height: info.h + 'px', right: mxp, bottom: v + 'px', left: mxp
|
| - });
|
| - } else {
|
| - stylize(info.element, {
|
| - top: myp, right: v + 'px', bottom: myp, width: info.w + 'px'
|
| - });
|
| - }
|
| - });
|
| - }
|
| - },
|
| -
|
| - stylize: function(element, styles) {
|
| - var style = element.style;
|
| - Object.keys(styles).forEach(function(k){
|
| - style[k] = styles[k];
|
| - });
|
| - }
|
| -
|
| - });
|
| -
|
| - </script>
|
| -
|
| -</polymer-element>
|
|
|