| OLD | NEW |
| (Empty) |
| 1 <!-- | |
| 2 Copyright (c) 2014 The Polymer Project Authors. All rights reserved. | |
| 3 This code may only be used under the BSD style license found at http://polymer.g
ithub.io/LICENSE.txt | |
| 4 The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt | |
| 5 The complete set of contributors may be found at http://polymer.github.io/CONTRI
BUTORS.txt | |
| 6 Code distributed by Google as part of the polymer project is also | |
| 7 subject to an additional IP rights grant found at http://polymer.github.io/PATEN
TS.txt | |
| 8 --> | |
| 9 | |
| 10 <!-- | |
| 11 The progress bars are for situations where the percentage completed can be | |
| 12 determined. They give users a quick sense of how much longer an operation | |
| 13 will take. | |
| 14 | |
| 15 Example: | |
| 16 | |
| 17 <paper-progress value="10"></paper-progress> | |
| 18 | |
| 19 There is also a secondary progress which is useful for displaying intermediate | |
| 20 progress, such as the buffer level during a streaming playback progress bar. | |
| 21 | |
| 22 Example: | |
| 23 | |
| 24 <paper-progress value="10" secondaryProgesss="30"></paper-progress> | |
| 25 | |
| 26 Styling progress bar: | |
| 27 | |
| 28 To change the active progress bar color: | |
| 29 | |
| 30 paper-progress::shadow #activeProgress { | |
| 31 background-color: #e91e63; | |
| 32 } | |
| 33 | |
| 34 To change the secondary progress bar color: | |
| 35 | |
| 36 paper-progress::shadow #secondaryProgress { | |
| 37 background-color: #f8bbd0; | |
| 38 } | |
| 39 | |
| 40 To change the progress bar background color: | |
| 41 | |
| 42 paper-progress::shadow #progressContainer { | |
| 43 background-color: #64ffda; | |
| 44 } | |
| 45 | |
| 46 @group Paper Elements | |
| 47 @element paper-progress | |
| 48 @extends core-range | |
| 49 @homepage github.io | |
| 50 --> | |
| 51 | |
| 52 <link rel="import" href="../core-range/core-range.html"> | |
| 53 | |
| 54 <polymer-element name="paper-progress" extends="core-range" attributes="secondar
yProgress indeterminate"> | |
| 55 | |
| 56 <template> | |
| 57 | |
| 58 <link rel="stylesheet" href="paper-progress.css"> | |
| 59 | |
| 60 <div id="progressContainer" role="progressbar" aria-valuenow="{{value}}" ari
a-valuemin="{{min}}" aria-valuemax="{{max}}"> | |
| 61 | |
| 62 <div id="secondaryProgress" fit></div> | |
| 63 <div id="activeProgress" fit></div> | |
| 64 | |
| 65 </div> | |
| 66 | |
| 67 </template> | |
| 68 | |
| 69 <script> | |
| 70 | |
| 71 Polymer('paper-progress', { | |
| 72 | |
| 73 /** | |
| 74 * The number that represents the current secondary progress. | |
| 75 * | |
| 76 * @attribute secondaryProgress | |
| 77 * @type number | |
| 78 * @default 0 | |
| 79 */ | |
| 80 secondaryProgress: 0, | |
| 81 | |
| 82 /** | |
| 83 * Use an indeterminate progress indicator. | |
| 84 * | |
| 85 * @attribute indeterminate | |
| 86 * @type boolean | |
| 87 * @default false | |
| 88 */ | |
| 89 indeterminate: false, | |
| 90 | |
| 91 step: 0, | |
| 92 | |
| 93 observe: { | |
| 94 'value secondaryProgress min max indeterminate': 'update' | |
| 95 }, | |
| 96 | |
| 97 update: function() { | |
| 98 this.super(); | |
| 99 this.secondaryProgress = this.clampValue(this.secondaryProgress); | |
| 100 this.secondaryRatio = this.calcRatio(this.secondaryProgress) * 100; | |
| 101 | |
| 102 // If we use attribute/class binding, the animation sometimes doesn't tr
anslate properly | |
| 103 // on Safari 7.1. So instead, we toggle the class here in the update met
hod. | |
| 104 this.$.activeProgress.classList.toggle('indeterminate', this.indetermina
te); | |
| 105 }, | |
| 106 | |
| 107 transformProgress: function(progress, ratio) { | |
| 108 var transform = 'scaleX(' + (ratio / 100) + ')'; | |
| 109 progress.style.transform = progress.style.webkitTransform = transform; | |
| 110 }, | |
| 111 | |
| 112 ratioChanged: function() { | |
| 113 this.transformProgress(this.$.activeProgress, this.ratio); | |
| 114 }, | |
| 115 | |
| 116 secondaryRatioChanged: function() { | |
| 117 this.transformProgress(this.$.secondaryProgress, this.secondaryRatio); | |
| 118 } | |
| 119 | |
| 120 }); | |
| 121 | |
| 122 </script> | |
| 123 | |
| 124 </polymer-element> | |
| OLD | NEW |