For once, I decided to showcase something in a Video instead of writing a big wall of text. It was just easier to show the result.
I started thinking about making a Notification Panel for nuke a couple of years ago, but never had the time to bring it to a decent level of completion.
I picked it up again last week and decided to finish up and clean up the code to make a version 1, as a proof of concept. I don’t expect it being super useful in its current form but it might interest a few TDs.
There are a few features I would have liked to implement but decided to push to a possible v2:
- Node context: I would like the notification to be able to point to a node, so that clicking on the notification would center the concerned node.
- Validation/Expiration: It would be nice to have a way to re-validate notifications so that they can be auto-dismissed if they are expired.
- Notification hashing: Being able to identify specific notifications would be useful to avoid duplicate notifications, plus useful for dismiss options (see next point).
- Ability to silence for script or forever: Would like the ability to dismiss a notification and pick options for “Don’t notify me again for this script” or “Never notify me again”, based on the hash.
- Flags system: Would like the ability to set flags on notifications. Could use flags to say if the notification can be silenced for example.
- Better pop-up: QMessageBox is convenient but it’s also a bit buggy and ugly, would be nice to have a better dialog for showing the full form of the notification
There is are also some features I tried to get but didn’t manage. I was trying to add both an icon and text in the menu bar so that I could display an icon that would change depending on whether or not there are notifications. I tried hacking into QT quite a bit but didn’t manage to achieve this, although i could have added 2 entries in the menu, one for the icon and one with the text, that would both show the same notification panel. Of course making it a regular nuke panel instead of embedding in the native menu would give me more flexibility, but that was part of the exercise to insert a widget directly in the native nuke menu. I don’t have a Mac to test, I’d be curious to see how it behaves there with the way Mac docks the main menu.
I don’t currently have a need for this notification panel myself anymore, so I will not be working on it for now, but feel free to have a play with it, or suggest improvements.