changelog
    
    
    - Thu, 04 Jan 2018 19:40:52 +0200
 
    - by Santeri Piippo [Thu, 04 Jan 2018 19:40:52 +0200] rev 1216
 
    - add autosave
 
    - Thu, 04 Jan 2018 19:40:16 +0200
 
    - by Santeri Piippo [Thu, 04 Jan 2018 19:40:16 +0200] rev 1215
 
    - replaced "Config->" with "config."
 
    - Thu, 04 Jan 2018 19:24:40 +0200
 
    - by Santeri Piippo [Thu, 04 Jan 2018 19:24:40 +0200] rev 1214
 
    - increased range of GLRenderer bounds
 
    - Thu, 04 Jan 2018 19:21:46 +0200
 
    - by Santeri Piippo [Thu, 04 Jan 2018 19:21:46 +0200] rev 1213
 
    - circlemode: don't wait for the last click
 
    - Sun, 07 May 2017 13:29:58 +0300
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 07 May 2017 13:29:58 +0300] rev 1212
 
    - Worked more on the library collection thing
 
    - Mon, 27 Mar 2017 14:56:05 +0300
 
    - by Teemu Piippo <teemu@hecknology.net> [Mon, 27 Mar 2017 14:56:05 +0300] rev 1211
 
    - LibraryCollection now derives from QObject and QVector<Library>
 
    - Sun, 12 Mar 2017 11:03:44 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 12 Mar 2017 11:03:44 +0200] rev 1210
 
    - More work on library collections
 
    - Thu, 09 Mar 2017 12:50:14 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 09 Mar 2017 12:50:14 +0200] rev 1209
 
    - Laid groundwork for library collection support.
 
    - Thu, 09 Mar 2017 00:54:45 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 09 Mar 2017 00:54:45 +0200] rev 1208
 
    - Some cleanup in LDPaths
 
    - Thu, 09 Mar 2017 00:40:07 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 09 Mar 2017 00:40:07 +0200] rev 1207
 
    - Removed the unary min and max functions.
 
    - Wed, 08 Mar 2017 22:48:43 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 08 Mar 2017 22:48:43 +0200] rev 1206
 
    - Better encapsulated the BaseConfiguration class.
 
    - Wed, 08 Mar 2017 22:09:48 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 08 Mar 2017 22:09:48 +0200] rev 1205
 
    - Whoops
 
    - Wed, 08 Mar 2017 20:16:06 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 08 Mar 2017 20:16:06 +0200] rev 1204
 
    - Split the configuration main interface to a new class, BaseInterface, so that moc can properly deal with it.
 
    - Mon, 06 Mar 2017 12:15:33 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Mon, 06 Mar 2017 12:15:33 +0200] rev 1203
 
    - Configuration changes can now be detected with signals.
 
    - Mon, 06 Mar 2017 11:49:00 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Mon, 06 Mar 2017 11:49:00 +0200] rev 1202
 
    - Added Python tools to CMake so that they show up in IDEs
 
    - Mon, 06 Mar 2017 11:48:45 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Mon, 06 Mar 2017 11:48:45 +0200] rev 1201
 
    - Simplified GLCompiler vbo interface
 
    - Mon, 06 Mar 2017 01:17:15 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Mon, 06 Mar 2017 01:17:15 +0200] rev 1200
 
    - PrimitiveScanner is no longer a HierarchyElement.
 
    - Mon, 06 Mar 2017 00:55:45 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Mon, 06 Mar 2017 00:55:45 +0200] rev 1199
 
    - Grid is now a namespace.
 
    - Mon, 06 Mar 2017 00:43:43 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Mon, 06 Mar 2017 00:43:43 +0200] rev 1198
 
    - MathFunctions is now a namespace.
 
    - Mon, 06 Mar 2017 00:41:13 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Mon, 06 Mar 2017 00:41:13 +0200] rev 1197
 
    - Fixed NewPartDialog leaking the memory allocated by the user interface.
 
    - Mon, 06 Mar 2017 00:40:23 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Mon, 06 Mar 2017 00:40:23 +0200] rev 1196
 
    - NewPartDialog is no longer a HierarchyElement.
 
    - Mon, 06 Mar 2017 00:36:40 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Mon, 06 Mar 2017 00:36:40 +0200] rev 1195
 
    - ColorSelector is no longer a HierarchyElement.
 
    - Mon, 06 Mar 2017 00:35:47 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Mon, 06 Mar 2017 00:35:47 +0200] rev 1194
 
    - GuiUtilities is now a namespace.
 
    - Sun, 05 Mar 2017 20:26:56 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 05 Mar 2017 20:26:56 +0200] rev 1193
 
    - The Grid class is no longer a hierarchy element or a QObject.
 
    - Sun, 05 Mar 2017 20:25:22 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 05 Mar 2017 20:25:22 +0200] rev 1192
 
    - Made configuration a global singleton. I think I can give in at least that much because it makes solving a lot of problems easier.
 
    - Sun, 05 Mar 2017 16:57:49 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 05 Mar 2017 16:57:49 +0200] rev 1191
 
    - Also removed the copy constructor and copy assignment because those only are bad news for a resource managing vector...
 
    - Sun, 05 Mar 2017 16:55:48 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 05 Mar 2017 16:55:48 +0200] rev 1190
 
    - and let's put a newline there...
 
    - Sun, 05 Mar 2017 16:54:42 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 05 Mar 2017 16:54:42 +0200] rev 1189
 
    - Deleted the copy constructor version of ResourceVector<T>::insert, like with append
 
    - Sun, 05 Mar 2017 16:50:37 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 05 Mar 2017 16:50:37 +0200] rev 1188
 
    - Sorted the methods in Model's public section.
 
    - Sun, 05 Mar 2017 16:50:06 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 05 Mar 2017 16:50:06 +0200] rev 1187
 
    - Renamed some methods of the Model class to remove the 'emplace' word (however cromulent it is, being from STL...) from them.
 
    - Sun, 05 Mar 2017 16:47:52 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 05 Mar 2017 16:47:52 +0200] rev 1186
 
    - Moved LDObject lifetime management from Model to ResourceVector. This is a large refactor that removes some hacks from the Model class.
 
    - Sun, 05 Mar 2017 13:33:37 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 05 Mar 2017 13:33:37 +0200] rev 1185
 
    - Added a new type ResourceVector which manages object lifetimes, and used it to remove a bit of memory management.