I'm trying to sort out the proper use of the extension.enabled property.
Extensions, Python or otherwise, usually have a toolbar. But the toolbar can be displayed whether or not the extension is checked (enabled) in the Extensions... dialog box. So then I'd at least want my Add-In's toolbar to be disabled if the extension is disabled, and to enable if the extension is enabled.
It is easy enough, if messy, for every widget on the toolbar to check in its init() whether it should enabled itself when it is created (when the toolbar is shown) - but what about after the toolbar has been shown, if the extension enabled state is changed? In a Python Add-In extension at least, there is no event on the extension's enabled property. Where should I hang code to reset the toolbar widgets' enabled state?
In the end, I want some mechanism so the user can disable everything on my Add-In's toolbar when they don't want to use it. Is the extension enabled property the right place for that sort of thing?