diff options
author | Andrew Dolgov <[email protected]> | 2010-11-19 20:18:20 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2010-11-19 20:18:20 +0300 |
commit | 997429c22813408e15c73ec0ff127f0cc1a9b994 (patch) | |
tree | f09415bf0c12edd61c7bfab400158d661d0fae97 /FeedTree.js | |
parent | 7b5e74c75c4d5f367f0c3bf79020021ee1a807b3 (diff) |
add experimental support for feedlist popup menu
Diffstat (limited to 'FeedTree.js')
-rw-r--r-- | FeedTree.js | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/FeedTree.js b/FeedTree.js index f4a88e331..f01fd24cf 100644 --- a/FeedTree.js +++ b/FeedTree.js @@ -2,6 +2,7 @@ dojo.provide("fox.FeedTree"); dojo.provide("fox.FeedStoreModel"); dojo.require("dijit.Tree"); +dojo.require("dijit.Menu"); dojo.declare("fox.FeedStoreModel", dijit.tree.ForestStoreModel, { getItemById: function(id) { @@ -45,10 +46,33 @@ dojo.declare("fox.FeedStoreModel", dijit.tree.ForestStoreModel, { dojo.declare("fox.FeedTree", dijit.Tree, { _createTreeNode: function(args) { var tnode = new dijit._TreeNode(args); - + if (args.item.icon) tnode.iconNode.src = args.item.icon[0]; + var id = args.item.id[0]; + var bare_id = parseInt(id.substr(id.indexOf(':')+1)); + + if (id.match("FEED:") && bare_id > 0) { + var menu = new dijit.Menu(); + menu.row_id = bare_id; + + menu.addChild(new dijit.MenuItem({ + label: __("Edit feed"), + onClick: function() { + editFeedDlg(this.getParent().row_id); + }})); + + menu.addChild(new dijit.MenuItem({ + label: __("Update feed"), + onClick: function() { + scheduleFeedUpdate(this.getParent().row_id, false); + }})); + + menu.bindDomNode(tnode.domNode); + tnode._menu = menu; + } + //tnode.labelNode.innerHTML = args.label; return tnode; }, |