Enhanced ToDo List Panel for Nuke
TodoList
Updated: 4 August 2025
Author: sarus
Compatible Nuke versions: 13.0 or later
Compatibility:
This script implements a custom Nuke panel that allows artists to manage a per-project to-do list directly within the Nuke UI. Key features include:
1. **Persistent Storage**: Tasks are stored in a JSON file located next to the current Nuke script (or in the user home folder if no script is saved), ensuring each project has its own task file.
2. **Singleton Callbacks**: Script-load and script-save callbacks register only once to automatically reload tasks when switching or saving scripts without duplicating handlers.
3. **Dynamic Task Items**: Each task is represented by a widget (`TaskItem`) displaying the task name, priority (1–3), and buttons to mark complete (✅) or delete (❌).
4. **Priority and Name Sorting**: Clickable headers 'Task Name' and 'Priority' toggle ascending/descending sorting on the corresponding column.
Install:
- Place this script in your Nuke plugin folder (e.g., `~/.nuke).
- Insert line in menu.py 'import TodoList' without quotes
- Restart Nuke.
- Open the panel via **Pane → Windows → Custom → Todo List** in the Nuke menu.