Index: elements/viewer-progress-bar/viewer-progress-bar.html |
diff --git a/elements/viewer-progress-bar/viewer-progress-bar.html b/elements/viewer-progress-bar/viewer-progress-bar.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..8a4339e7a012a477a4045b5426737ac5da43962d |
--- /dev/null |
+++ b/elements/viewer-progress-bar/viewer-progress-bar.html |
@@ -0,0 +1,50 @@ |
+<polymer-element name="viewer-progress-bar" attributes="progress text"> |
+<template> |
+ <link rel="stylesheet" href="viewer-progress-bar.css"> |
+ <div class="scaler"> |
+ <ul id="segments"> |
+ <li class="segment"></li> |
+ <li class="segment"></li> |
+ <li class="segment"></li> |
+ <li class="segment"></li> |
+ <li class="segment"></li> |
+ <li class="segment"></li> |
+ <li class="segment"></li> |
+ <li class="segment"></li> |
ganetsky1
2014/02/04 17:27:29
I would try to avoid this repitition and just have
raymes
2014/02/05 05:04:37
Because it's so simple, I don't know if it's worth
|
+ </ul> |
+ <div class="center-circle"></div> |
+ </div> |
+ <div id="text">Loading</div> |
+</template> |
+<script> |
+ Polymer('viewer-progress-bar', { |
+ progress: 0, |
+ text: 'Loading', |
+ segments: [], |
+ ready: function() { |
+ var children = this.$.segments.childNodes; |
+ for (var i = 0; i < children.length; i++) { |
+ if (children[i].classList && |
+ children[i].classList.contains('segment')) { |
+ this.segments.push(children[i]); |
+ } |
+ } |
+ this.progressChanged(); |
+ }, |
+ progressChanged: function() { |
+ var numVisible = this.progress * this.segments.length / 100.0; |
+ for (var i = 0; i < this.segments.length; i++) { |
+ if (i < numVisible) |
+ this.segments[i].style.visibility = 'visible'; |
+ else |
+ this.segments[i].style.visibility = 'hidden'; |
ganetsky1
2014/02/04 17:27:29
Ternary operator?
this.segments[i].style.visibili
raymes
2014/02/05 05:04:37
Done.
|
+ } |
+ if (this.progress == 100) |
+ this.style.opacity = 0; |
+ }, |
+ textChanged: function() { |
+ this.$.text.innerHTML = this.text; |
+ }, |
+}); |
+</script> |
+</polymer-element> |