Commit 53edc6a8

Remove redunant code from the renderer and make things more generic (sic)

This moves all the render pipelines that have been class members into a std::map so that we can iterate over them, this makes it a lot easier to get rid of some code duplication.
It also introduces a FileReader class which is only used for now to read the shader code. Before that, that same code was on the renderer itself since the beginnings of (OLives) times, where it obviously did not belong.

Commit 06e1e131

– implement missing wall type selection in the UI
– fix bug when removing walls that caused warnings when removing walls
– finally remove temporary input code that was used to circumvent the missing UI

Wallpapers can now be set through the UI as is removing walls. That luckily also means that the ‘o’ hotkey is no longer needed, as the UI now supports everything that up to this point was only possible through the hotkeys.

Commit fdfed299

– add support for listing and adding all available object types dynamically through the UI
– make the render synchronisation code for the UI safer against crashes through race conditions
– add crappy temp icons for the object types

Aaaand once again, fewer crashes. The main point here is that we can place any object in shop mode now, enjoy the lovely icons: