sergiomtzlosa/MultiContactsSelector-ios — pull request #11 by andygeers (2013-07-21 08:26:17+00:00)
Title: Various fixes & improvements

Hey there,
Thanks for all of your hard work on this library, it's really useful.
Here are a few patches:
1. It fixes an issue where you were removing all people without phone numbers, regardless of whether we were interested in the phone number. Some of us just want ALL contacts - so I made it only strip out numbers if you were asking for numbers
2. I've reimplemented the internationalisation to use the built in functions and string tables. As well as being neater, this means it will also scale to more languages in the future if necessary
3. Removing from arrays is an incredibly expensive operation, *especially* if you loop over them and then potentially remove more than one element. I don't know for certain how NSSets are implemented under the hood, but at least theoretically they could be much faster than NSArrays to remove from
4. I've tidied up how the properties are assigned to and released. Since you have defined your properties as "retain" in the header, when you do 'self.arrayLetters = X' this automatically retains, so you don't need to do that manually. Similarly, when you do 'self.arrayLetters = nil' this automatically releases.
5. I replaced lots of things that were unnecessarily defined as Mutable with non-mutable variations, since its always preferable to keep them immutable unless you really need to be able to modify them
6. I also made it so that you can easily make the UI elements use styles over than opaque black, to fit better with the look of the rest of your application