Based on the idea of ZZInfoBars dropdown menu, awsmDropdown is a library for addon developers providing access to feature rich dropdowns. These allow you to easily create simple configuration menus, value choosers, dropdowns with icons, dropdowns containing subdropdowns without the need of creating a fully fledged window for every little addon. Pass a table describing the dropdowns structure to awsmDropdown and you're fine. Using callback functions your addon is notified whenever a buttons value changed, or you may directly use getter/setter functions on the buttons value field to directly modify variables of your addon. (Remind that the latter way bypasses the UpdateMode)