From 9d364be255900e9bde02c4b254d145ec41fc78fb Mon Sep 17 00:00:00 2001
From: Kishore Subramanian
Date: Mon, 19 Mar 2012 10:36:49 -0700
Subject: Changes to the Demo
- Feed Reader now shows one entry at a time
- Category dropdown removed form the Map. It is included as part of the example code
- Changed the categories that do not return results
---
.../ui/feed-reader/feed-entry.reel/feed-entry.html | 1 -
.../feed-reader/feed-reader.reel/feed-reader.html | 26 +++++++++--
.../ui/feed-reader/feed-reader.reel/feed-reader.js | 51 ++++++++++++++++++++++
3 files changed, 74 insertions(+), 4 deletions(-)
(limited to 'node_modules/montage/ui/feed-reader')
diff --git a/node_modules/montage/ui/feed-reader/feed-entry.reel/feed-entry.html b/node_modules/montage/ui/feed-reader/feed-entry.reel/feed-entry.html
index 213b4602..6c3a5298 100644
--- a/node_modules/montage/ui/feed-reader/feed-entry.reel/feed-entry.html
+++ b/node_modules/montage/ui/feed-reader/feed-entry.reel/feed-entry.html
@@ -61,7 +61,6 @@
.feed-entry {
padding: 10px;
margin: 3px 0;
- border: 1px solid #aaa;
}
.feed-entry h2 {
font-size: 24px;
diff --git a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html
index a3523001..646fd01e 100644
--- a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html
+++ b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html
@@ -53,7 +53,15 @@
"module": "montage/ui/feed-reader/feed-reader.reel",
"name": "FeedReader",
"properties": {
- "element": {"#": "feed-reader"}
+ "element": {"#": "feed-reader"},
+ "repetition": {"@": "repetition"}
+ },
+ "bindings": {
+ "items": {
+ "boundObject": {"@": "repetition"},
+ "boundObjectPropertyPath": "objects",
+ "oneway": true
+ }
}
}
@@ -61,8 +69,20 @@
diff --git a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js
index 838a957d..d5c9ca17 100644
--- a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js
+++ b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js
@@ -40,7 +40,13 @@ exports.FeedReader = Montage.create(Component, {
this._fetchFeed();
}
},
+
+ // time in ms between slides
+ interval: {value: 3000, distinct: true},
+
+ repetition: {enumerable: false, value: null},
+ maxEntries: {value: 10, distinct: true},
entries: {value: null},
@@ -55,6 +61,51 @@ exports.FeedReader = Montage.create(Component, {
//Notifier.hide();
}
},
+
+
+ feedEntryTimer: {enumerable: false, value: null},
+ _items: {
+ value: null
+ },
+ items: {
+ get: function() {
+ return this._items;
+ },
+ set: function(value) {
+ this._items = value;
+ // reset the counter
+ console.log('got items');
+ this.activeIndex = 0;
+
+ if(this.feedEntryTimer) {
+ window.clearInterval(this.feedEntryTimer);
+ }
+ var self = this, maxEntries = self.maxEntries;
+
+ this.feedEntryTimer = setInterval(function() {
+ var index = self.activeIndex + 1;
+ if(index > maxEntries) {
+ index = 0;
+ }
+ if(index < 0) {
+ index = 0;
+ }
+ self.activeIndex = index;
+
+ }, this.interval);
+ }
+ },
+
+ _activeIndex: {value: null},
+ activeIndex: {
+ get: function() {
+ return this._activeIndex || 0;
+ },
+ set: function(value) {
+ this._activeIndex = value;
+ this.repetition.activeIndexes = [value];
+ }
+ },
_fetchFeed: {
value: function() {
--
cgit v1.2.3
From ec58642a7b31165890eb5bef7d95ce59dd0c34a0 Mon Sep 17 00:00:00 2001
From: Kishore Subramanian
Date: Mon, 19 Mar 2012 14:14:29 -0700
Subject: Changes to Map and FeedReader
- Added traffic property to Map
- Support for show/hide traffic in the example
- Changed FeedReader to use only one DIV. No longer uses Repetition
- Support multiple modes in the Feed reader - timed/animated---
.../ui/feed-reader/feed-entry.reel/feed-entry.js | 10 +-
.../feed-reader/feed-reader.reel/feed-reader.html | 38 +-----
.../ui/feed-reader/feed-reader.reel/feed-reader.js | 127 ++++++++++++---------
3 files changed, 91 insertions(+), 84 deletions(-)
(limited to 'node_modules/montage/ui/feed-reader')
diff --git a/node_modules/montage/ui/feed-reader/feed-entry.reel/feed-entry.js b/node_modules/montage/ui/feed-reader/feed-entry.reel/feed-entry.js
index 3d97eec7..72c5023e 100644
--- a/node_modules/montage/ui/feed-reader/feed-entry.reel/feed-entry.js
+++ b/node_modules/montage/ui/feed-reader/feed-entry.reel/feed-entry.js
@@ -8,6 +8,14 @@ var Montage = require("montage").Montage,
exports.FeedEntry = Montage.create(Component, {
- entry: {value: null}
+ _entry: {value: null},
+ entry: {
+ get: function() {
+ return this._entry;
+ },
+ set: function(value) {
+ this._entry = value;
+ }
+ }
});
diff --git a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html
index 646fd01e..e5251e0a 100644
--- a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html
+++ b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html
@@ -23,17 +23,7 @@
}
}
},
-
- "repetition": {
- "module": "montage/ui/repetition.reel",
- "name": "Repetition",
- "properties": {
- "element": {"#": "entries"},
- "contentController": {"@": "entriesController"},
- "isSelectionEnabled": true,
- "orientation": "vertical"
- }
- },
+
"feedEntry": {
"module": "montage/ui/feed-reader/feed-entry.reel",
"name": "FeedEntry",
@@ -42,27 +32,19 @@
},
"bindings": {
"entry": {
- "boundObject": {"@": "repetition"},
- "boundObjectPropertyPath": "objectAtCurrentIteration",
+ "boundObject": {"@": "owner"},
+ "boundObjectPropertyPath": "activeFeedEntry",
"oneway": true
}
- }
+ }
},
"owner": {
"module": "montage/ui/feed-reader/feed-reader.reel",
"name": "FeedReader",
"properties": {
- "element": {"#": "feed-reader"},
- "repetition": {"@": "repetition"}
- },
- "bindings": {
- "items": {
- "boundObject": {"@": "repetition"},
- "boundObjectPropertyPath": "objects",
- "oneway": true
- }
- }
+ "element": {"#": "feed-reader"}
+ }
}
}
@@ -74,16 +56,8 @@
}
.feed-entry {
- display: none;
- }
-
- .montage-hidden {
- display: none;
}
- .active {
- display: block;
- }
diff --git a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js
index d5c9ca17..8fd9ae22 100644
--- a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js
+++ b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js
@@ -42,92 +42,117 @@ exports.FeedReader = Montage.create(Component, {
},
// time in ms between slides
- interval: {value: 3000, distinct: true},
-
- repetition: {enumerable: false, value: null},
+ interval: {value: 3, distinct: true},
maxEntries: {value: 10, distinct: true},
- entries: {value: null},
-
-
- _startLoading: {
- value: function() {
- //Notifier.show('Loading ... please wait', null, {top: this.element.style.top, left: this.element.style.left + 20});
- }
- },
-
- _stopLoading: {
- value: function() {
- //Notifier.hide();
- }
- },
+ entries: {value: null},
- feedEntryTimer: {enumerable: false, value: null},
- _items: {
- value: null
- },
- items: {
+ _feedDisplayMode: {value: null},
+ feedDisplayMode: {
get: function() {
- return this._items;
+ return this._feedDisplayMode;
},
set: function(value) {
- this._items = value;
- // reset the counter
- console.log('got items');
- this.activeIndex = 0;
-
- if(this.feedEntryTimer) {
- window.clearInterval(this.feedEntryTimer);
- }
- var self = this, maxEntries = self.maxEntries;
-
- this.feedEntryTimer = setInterval(function() {
- var index = self.activeIndex + 1;
- if(index > maxEntries) {
- index = 0;
- }
- if(index < 0) {
- index = 0;
- }
- self.activeIndex = index;
-
- }, this.interval);
+ this._feedDisplayMode = value;
}
},
+
+ feedEntryTimer: {enumerable: false, value: null},
+
+
+ activeFeedEntry: {value: null},
_activeIndex: {value: null},
activeIndex: {
get: function() {
return this._activeIndex || 0;
},
- set: function(value) {
- this._activeIndex = value;
- this.repetition.activeIndexes = [value];
+ set: function(index) {
+ if(this.entries) {
+ var max = this.entries.length-1;
+ if(index > max) {
+ index = 0;
+ }
+ if(index < 0) {
+ index = 0;
+ }
+ this._activeIndex = index;
+ this.activeFeedEntry = this.entries[this._activeIndex];
+ } else {
+ this._activeIndex = 0;
+ }
}
},
_fetchFeed: {
value: function() {
+
var url = this.feedURL;
var feed = new google.feeds.Feed(url);
feed.setNumEntries(10);
var self = this;
-
- this._startLoading();
self.entries = [];
feed.load(function(result) {
- self._stopLoading();
+ //self.removeEntryAnimation();
if(result.error) {
self.entries = [];
} else {
- //console.log('entries: ', result.feed.entries);
+ //console.log('entries: ', result.feed.entries);
self.entries = result.feed.entries;
+ this._activeIndex = 0;
}
+
+
});
}
+ },
+
+ addEntryAnimation: {
+ value: function() {
+ var self = this;
+ if("animation" == this.feedDisplayMode) {
+ this.element.addEventListener('animationend', this);
+ } else {
+ // timer
+ this.feedEntryTimer = setInterval(function() {
+ self.activeIndex = self.activeIndex + 1;
+ }, (this.interval * 1000));
+ }
+ }
+ },
+
+ removeEntryAnimation: {
+ value: function() {
+ if("animation" == this.feedDisplayMode) {
+ this.element.removeEventListener('animationend', this);
+ } else {
+ if(this.feedEntryTimer) {
+ window.clearInterval(this.feedEntryTimer);
+ }
+ }
+ }
+ },
+
+ handleAnimationend: {
+ value: function() {
+ console.log('animation end');
+ this.activeIndex = this.activeIndex + 1;
+ }
+ },
+
+ prepareForDraw: {
+ value: function() {
+ this.addEntryAnimation();
+ }
+ },
+
+ draw: {
+ value: function() {
+
+ }
}
});
--
cgit v1.2.3
From 64f2a4b6c0ca9e47996ab9bcec05b51d1e1194e4 Mon Sep 17 00:00:00 2001
From: Kishore Subramanian
Date: Tue, 20 Mar 2012 09:42:29 -0700
Subject: Animation for the Feed reader
---
.../feed-reader/feed-reader.reel/feed-reader.html | 4 ++-
.../ui/feed-reader/feed-reader.reel/feed-reader.js | 38 +++++++++++++++++-----
2 files changed, 32 insertions(+), 10 deletions(-)
(limited to 'node_modules/montage/ui/feed-reader')
diff --git a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html
index e5251e0a..21f3d4ee 100644
--- a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html
+++ b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html
@@ -52,7 +52,9 @@