// Template for the custom category renderer
var customCategoryRendererTemplate = "<template>"
+ "<div attach-point='renderNode'>"
+ "{{item.category}}"
+ "<div class='d-spacer'></div>"
+ "<a class='categoryLink' navindex='0' href='http://en.wikipedia.org/wiki/Special:Search?search={{item.category}}&go=Go'>Wikipedia</a>"
+ "</div>"
+ "</template>";
require.config({
baseUrl: "http://ibm-js.github.io/libraries/master/"
});
require(["deliteful-build/layer"], function () {
require([
"delite/register",
"dstore/Memory",
"deliteful/list/CategoryRenderer",
"deliteful/list/List",
"delite/handlebars",
"requirejs-dplugins/css!delite/themes/defaultapp.css",
"delite/theme!delite/themes/{{theme}}/global.css", // page level CSS
"requirejs-domready/domReady!"
], function (register, Memory, CategoryRenderer, List, handlebars) {
var MyCustomRenderer = register("d-cust-category", [HTMLElement, CategoryRenderer], {
template: handlebars.compile(customCategoryRendererTemplate)
});
var list = new List();
list.categoryAttr = "cat";
list.categoryRenderer = MyCustomRenderer;
var dstore = new Memory();
dstore.add({label: "Apple", cat: "Fruit"});
dstore.add({label: "Apricot", cat: "Fruit"});
dstore.add({label: "Banana", cat: "Fruit"});
dstore.add({label: "Orange", cat: "Fruit"});
dstore.add({label: "Pear", cat: "Fruit"});
dstore.add({label: "Strawberry", cat: "Fruit"});
dstore.add({label: "Brussel sprout", cat: "Vegetable"});
dstore.add({label: "Cabbage", cat: "Vegetable"});
dstore.add({label: "Kale", cat: "Vegetable"});
dstore.add({label: "Lettuce", cat: "Vegetable"});
list.source = dstore;
list.placeAt(document.body);
document.body.style.display = "";
});
});
.d-list-category .d-list-cell {
background-image: none;
background-color: green;
color: white;
height: 45px;
}
.categoryLink {
color: white;
font-size: small;
}