diff --git a/package.json b/package.json index 5209c8d..6008aa4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "zotero-addon-template", - "version": "0.0.6", + "version": "0.0.7", "description": "Zotero Addon Template", "config": { "addonName": "Zotero Addon Template", diff --git a/src/views.ts b/src/views.ts index 06b2ad0..dc2c757 100644 --- a/src/views.ts +++ b/src/views.ts @@ -58,14 +58,66 @@ class AddonViews extends AddonModule { }); // Initialize extra columns - this._Addon.toolkit.ItemTree.registerExample(); + this._Addon.toolkit.ItemTree.register( + "test1", + "text column", + ( + field: string, + unformatted: boolean, + includeBaseMapped: boolean, + item: Zotero.Item + ) => { + return field + String(item.id); + }, + { + iconPath: "chrome://zotero/skin/cross.png", + } + ); + this._Addon.toolkit.ItemTree.register( + "test2", + "custom column", + ( + field: string, + unformatted: boolean, + includeBaseMapped: boolean, + item: Zotero.Item + ) => { + return String(item.id); + }, + { + renderCellHook(index, data, column) { + const span = document.createElementNS( + "http://www.w3.org/1999/xhtml", + "span" + ); + span.style.background = "#0dd068"; + span.innerText = "⭐" + data; + return span; + }, + } + ); + + // Customize cells + this._Addon.toolkit.ItemTree.addRenderCellHook( + "title", + (index: number, data: string, column: any, original: Function) => { + const span = original(index, data, column) as HTMLSpanElement; + span.style.background = "rgb(30, 30, 30)"; + span.style.color = "rgb(156, 220, 240)"; + return span; + } + ); } public unInitViews() { this._Addon.toolkit.Tool.log("Uninitializing UI"); this._Addon.toolkit.UI.removeAddonElements(); // Remove extra columns - this._Addon.toolkit.ItemTree.unregister("test"); + this._Addon.toolkit.ItemTree.unregister("test1"); + this._Addon.toolkit.ItemTree.unregister("test2"); + + // Remove title cell patch + this._Addon.toolkit.ItemTree.removeRenderCellHook("title"); } public showProgressWindow( diff --git a/update.json b/update.json index 3c747a3..929d37d 100644 --- a/update.json +++ b/update.json @@ -3,7 +3,7 @@ "addontemplate@euclpts.com": { "updates": [ { - "version": "0.0.6", + "version": "0.0.7", "update_link": "https://github.com/windingwind/zotero-addon-template/releases/latest/download/zotero-addon-template.xpi", "applications": { "gecko": { @@ -12,7 +12,7 @@ } }, { - "version": "0.0.6", + "version": "0.0.7", "update_link": "https://github.com/windingwind/zotero-addon-template/releases/latest/download/zotero-addon-template.xpi", "applications": { "zotero": { diff --git a/update.rdf b/update.rdf index ec9e147..ec8de0d 100644 --- a/update.rdf +++ b/update.rdf @@ -5,7 +5,7 @@ - 0.0.6 + 0.0.7 zotero@chnm.gmu.edu