The main purpose of this patch is to reduce memory and cpu usage while rendering list table.
It has been done through:
- use of QLatin1String where applicable,
- moving i18nHeaders to function, because not all headers are needed every time table is rendered,
- moving column type detection to function, because of the same reason as above,
- using Int instead of QString as key in TableRow, because it's less error prone, faster, and smaller,
- applying multiarg instead of arg chaining, as it doesn't create temporary strings.