You want your users to be able to enable or disable your add-ons...
But, there really isn't any point, is there?
I would think that overall it is best practise to NOT have a separate option to disable/enable your add-ons.
Your add-on can be enabled/disabled easily enough from the home page of the Admin CP. Having further options would only confuse people, and furthermore having an option in the Admin CP doesn't actually disable your add-on properly anyway.
If you have an option to enable/disable your add-on, and you put that option in an if statement in your Listener (for example), your Listener still runs.
I'm actually looking at some code right now where someone has experienced an "Undefined index" server error in an add-on. That parameter is being checked OUTSIDE of the option check, therefore the add-on could be disabled in the options, but this error could still be occurring.
So, this thread isn't actually asking you why... It's more of a polite suggestion that perhaps you shouldn't (unless I'm missing something).