Ah, looks like there is a mod that does exactly what I want.

http://www.curse.com/addons/wow/easyloot

You can configure this to select disenchant based on quality level and roll greed / need on other levels. Woot.