Looks like some quite decent code I just wonder about your bad performence, as I don´t see anything which could cause that, or are you working on some quite weak system/laptop?
@Rondidon: What do you ask that for? It makes no difference anyways. At least, this isn´t A6 anymore .