add: example for custom cell patch
This commit is contained in:
parent
4ff9c79263
commit
206961fa9a
@ -31,7 +31,7 @@
|
||||
},
|
||||
"homepage": "https://github.com/windingwind/zotero-addon-template#readme",
|
||||
"dependencies": {
|
||||
"zotero-plugin-toolkit": "^0.0.10"
|
||||
"zotero-plugin-toolkit": "^0.0.11"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^18.11.17",
|
||||
|
56
src/views.ts
56
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(
|
||||
|
Loading…
x
Reference in New Issue
Block a user