Fixed a issue while deleting categories - Polishing UI
This commit is contained in:
39
view.ts
39
view.ts
@@ -285,18 +285,35 @@ class AddTaskModal extends Modal {
|
||||
new ManageCategoriesModal(this.app, this.plugin).open();
|
||||
}));
|
||||
} else {
|
||||
new Setting(contentEl)
|
||||
.setName("Category")
|
||||
.addDropdown(dropdown => {
|
||||
this.plugin.settings.categories.forEach(cat => {
|
||||
const label = cat.emoji ? `${cat.emoji} ${cat.name}` : cat.name;
|
||||
dropdown.addOption(cat.id, label);
|
||||
const categorySection = contentEl.createDiv({ cls: "taskweaver-modal-section" });
|
||||
categorySection.createEl("label", { text: "Category", cls: "taskweaver-modal-label" });
|
||||
|
||||
const categoriesGrid = categorySection.createDiv({ cls: "taskweaver-categories-grid" });
|
||||
|
||||
this.plugin.settings.categories.forEach(cat => {
|
||||
const categoryBtn = categoriesGrid.createDiv({ cls: "taskweaver-category-btn" });
|
||||
categoryBtn.style.borderColor = cat.color;
|
||||
|
||||
if (cat.id === selectedCategoryId) {
|
||||
categoryBtn.addClass("selected");
|
||||
categoryBtn.style.backgroundColor = cat.color + "20";
|
||||
}
|
||||
|
||||
if (cat.emoji) {
|
||||
categoryBtn.createSpan({ text: cat.emoji, cls: "taskweaver-category-btn-emoji" });
|
||||
}
|
||||
categoryBtn.createSpan({ text: cat.name, cls: "taskweaver-category-btn-name" });
|
||||
|
||||
categoryBtn.onclick = () => {
|
||||
selectedCategoryId = cat.id;
|
||||
categoriesGrid.querySelectorAll(".taskweaver-category-btn").forEach(btn => {
|
||||
btn.removeClass("selected");
|
||||
(btn as HTMLElement).style.backgroundColor = "";
|
||||
});
|
||||
dropdown.setValue(selectedCategoryId);
|
||||
dropdown.onChange(value => {
|
||||
selectedCategoryId = value;
|
||||
});
|
||||
});
|
||||
categoryBtn.addClass("selected");
|
||||
categoryBtn.style.backgroundColor = cat.color + "20";
|
||||
};
|
||||
});
|
||||
|
||||
new Setting(contentEl)
|
||||
.addButton(btn => btn
|
||||
|
||||
Reference in New Issue
Block a user