UiKanbanSpecifier buildTodoKanban() {
new UiKanbanSpecifier().ui { (1)
column 'HeaderStr', Style.ALIGN_CENTER, Gantt2Controller.&changeTodoProgression as MethodClosure, [newProgression: 0], { (2)
custom "Custom html code" (3)
todos.forEach { Todo todo ->
card todo, Gantt2Controller.&showTodo as MethodeClosure, todo.id, { (4)
cardField todo.what_ (5)
cardFieldRaw "Custom html code" (6)
cardAction ActionIcon.SHOW * IconStyle.SCALE_DOWN, Gantt2Controller.&doSomething as MethodClosure, todo.id (7)
}
}
}
}
}
Table of Contents
-
Rendered into HTML
-
Rendered into Mails
-
Rendered into PDF
-
Rendered into CSV

Code Sample
Kanban Sample Code 1
Write in a service for register contextmenu
@PostConstruct
void init() {
TaackUiService.registerContextualMenuClosure(Todo, new UiMenuSpecifier().ui { (8)
menu 'Show Gantt', Gantt2Controller.&showGanttByTodo as MethodClosure, [id: this.params['id']] (9)
}
}
| 1 | Create the kanban specifier |
| 2 | Build kanban column and column header, could pass an action and params as Drag+Drop for the column |
| 3 | Could add custom html code for the column body |
| 4 | Build cards in the column, could pass an action and params as MouseDoubleClic for the card |
| 5 | Build a line with field in the card, note the underscore at the end of the field name |
| 6 | Could add custom html code |
| 7 | Could add an icon with action bind to clic |
| 8 | Register contextmenu as MouseRight for the card |
| 9 | Add a menu item with action bind |
DSL Symbols Hierarchy
Figure 1. Symbols hierarchy diagram for Kanban DSL