jessmartin/CoolButtons — pull request #7 by soundevolution (2011-10-17 10:44:54+00:00)
Title: Performance improvements...

There is a performance hit caused by having a -drawRect: method that doesn't draw. Since all the appearance is controlled by layers, this can all be configured from a -layoutSubviews call, which will additionally fix the layers when the button frame changes (see your issue #5).

You could make additional improvements by setting a flag in the -setButtonColor: method so that the layers are only reconfigured when the colour changes instead of doing it on every layout (which happens quite often when a view is a being animated.).

Good work.