changelog
    
    
    - Fri, 16 Mar 2018 11:50:35 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Fri, 16 Mar 2018 11:50:35 +0200] rev 1288
 
    - Header parsing complete, moved all parsing code into a new class. Documents are now all loaded in one go.
 
    - Thu, 15 Mar 2018 18:51:58 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 15 Mar 2018 18:51:58 +0200] rev 1287
 
    - begin work on document loading rework
 
    - Thu, 15 Mar 2018 11:31:39 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 15 Mar 2018 11:31:39 +0200] rev 1286
 
    - added a document header structure
 
    - Thu, 15 Mar 2018 10:46:46 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 15 Mar 2018 10:46:46 +0200] rev 1285
 
    - added signal emissions
 
    - Wed, 14 Mar 2018 12:18:52 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 14 Mar 2018 12:18:52 +0200] rev 1284
 
    - moved emit calls
 
    - Wed, 14 Mar 2018 12:08:03 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 14 Mar 2018 12:08:03 +0200] rev 1283
 
    - added an MVC interface to the primitives tree
 
    - Sun, 11 Mar 2018 23:42:03 +0200
 
    - by Santeri Piippo [Sun, 11 Mar 2018 23:42:03 +0200] rev 1282
 
    - fixed removing objects causing some other objects to disappear
 
    - Sun, 11 Mar 2018 16:13:32 +0200
 
    - by Santeri Piippo [Sun, 11 Mar 2018 16:13:32 +0200] rev 1281
 
    - optimized triangle count
 
    - Sun, 11 Mar 2018 16:13:22 +0200
 
    - by Santeri Piippo [Sun, 11 Mar 2018 16:13:22 +0200] rev 1280
 
    - fixed: LDDocument created one removal connection to the model for each object added, so removing an object from a model of 9 objects added 9 deletion entries to history
 
    - Thu, 08 Mar 2018 11:39:18 +0200
 
    - by Santeri Piippo [Thu, 08 Mar 2018 11:39:18 +0200] rev 1279
 
    - renamed signal
 
    - Thu, 08 Mar 2018 11:36:55 +0200
 
    - by Santeri Piippo [Thu, 08 Mar 2018 11:36:55 +0200] rev 1278
 
    - moved LDObject indices from a global array into Model
 
    - Wed, 07 Mar 2018 19:32:05 +0200
 
    - by Santeri Piippo [Wed, 07 Mar 2018 19:32:05 +0200] rev 1277
 
    - removed unused code
 
    - Wed, 07 Mar 2018 19:30:29 +0200
 
    - by Santeri Piippo [Wed, 07 Mar 2018 19:30:29 +0200] rev 1276
 
    - fixed object deleting not triggering the proper renderer updates
 
    - Wed, 07 Mar 2018 19:30:03 +0200
 
    - by Santeri Piippo [Wed, 07 Mar 2018 19:30:03 +0200] rev 1275
 
    - fixed DelHistoryEntries getting ignored...
 
    - Wed, 07 Mar 2018 12:04:06 +0200
 
    - by Santeri Piippo [Wed, 07 Mar 2018 12:04:06 +0200] rev 1274
 
    - removed some debug code
 
    - Tue, 06 Mar 2018 23:29:40 +0200
 
    - by Santeri Piippo [Tue, 06 Mar 2018 23:29:40 +0200] rev 1273
 
    - Implemented row moving in the model and replaced swapping with it
 
    - Mon, 05 Mar 2018 23:59:47 +0200
 
    - by Santeri Piippo [Mon, 05 Mar 2018 23:59:47 +0200] rev 1272
 
    - migrated model swapping to mvc and made Model::swapObjects to emit dataChanged signals as a temporary solution
 
    - Mon, 05 Mar 2018 22:44:48 +0200
 
    - by Santeri Piippo [Mon, 05 Mar 2018 22:44:48 +0200] rev 1271
 
    - removed some unneeded headers
 
    - Mon, 05 Mar 2018 22:42:54 +0200
 
    - by Santeri Piippo [Mon, 05 Mar 2018 22:42:54 +0200] rev 1270
 
    - Finally removed the cancer that is the LDObject::model pointer
 
    - Mon, 05 Mar 2018 22:40:34 +0200
 
    - by Santeri Piippo [Mon, 05 Mar 2018 22:40:34 +0200] rev 1269
 
    - Added LDObject serialization and refactored the internal resource managing to use it. No more tearing objects from one model into another, and this provides a stable way to keep an object's state in memory such as the edit history.
 
    - Sat, 03 Mar 2018 17:59:56 +0200
 
    - by Santeri Piippo [Sat, 03 Mar 2018 17:59:56 +0200] rev 1268
 
    - fix warning
 
    - Sat, 03 Mar 2018 17:59:32 +0200
 
    - by Santeri Piippo [Sat, 03 Mar 2018 17:59:32 +0200] rev 1267
 
    - removed another LDObject::model() use
 
    - Sat, 03 Mar 2018 17:57:35 +0200
 
    - by Santeri Piippo [Sat, 03 Mar 2018 17:57:35 +0200] rev 1266
 
    - removed LDError::fileReferenced
 
    - Sat, 03 Mar 2018 17:56:49 +0200
 
    - by Santeri Piippo [Sat, 03 Mar 2018 17:56:49 +0200] rev 1265
 
    - reimplemented detection of broken references in PartDownloadRequest::downloadFinished
 
    - Sat, 03 Mar 2018 17:52:40 +0200
 
    - by Santeri Piippo [Sat, 03 Mar 2018 17:52:40 +0200] rev 1264
 
    - reimplemented finding of broken document references
 
    - Sat, 03 Mar 2018 17:47:40 +0200
 
    - by Santeri Piippo [Sat, 03 Mar 2018 17:47:40 +0200] rev 1263
 
    - LDSubfileReference now contains the name of the subfile and not a pointer anymore. Some methods now require a DocumentManager* for context on resolving the name.
 
    - Sat, 03 Mar 2018 17:28:27 +0200
 
    - by Santeri Piippo [Sat, 03 Mar 2018 17:28:27 +0200] rev 1262
 
    - removed use of model() in LDSubfileReference::inlineContents
 
    - Sat, 03 Mar 2018 17:25:12 +0200
 
    - by Santeri Piippo [Sat, 03 Mar 2018 17:25:12 +0200] rev 1261
 
    - Removed LDObject::invert, inversion code moved to basic toolset
 
    - Sat, 03 Mar 2018 16:59:03 +0200
 
    - by Santeri Piippo [Sat, 03 Mar 2018 16:59:03 +0200] rev 1260
 
    - removed LDObject::swap
 
    - Sat, 03 Mar 2018 16:56:49 +0200
 
    - by Santeri Piippo [Sat, 03 Mar 2018 16:56:49 +0200] rev 1259
 
    - moved LDObject::next to the algorithm toolset
 
    - Sat, 03 Mar 2018 16:53:56 +0200
 
    - by Santeri Piippo [Sat, 03 Mar 2018 16:53:56 +0200] rev 1258
 
    - removed LDObject::lineNumber
 
    - Sat, 03 Mar 2018 15:14:07 +0200
 
    - by Santeri Piippo [Sat, 03 Mar 2018 15:14:07 +0200] rev 1257
 
    - more selection rework
 
    - Fri, 02 Mar 2018 22:23:53 +0200
 
    - by Santeri Piippo [Fri, 02 Mar 2018 22:23:53 +0200] rev 1256
 
    - removed LDDocument::clearSelection and replaced it with a MainWindow implementation
 
    - Thu, 11 Jan 2018 22:22:45 +0200
 
    - by Santeri Piippo [Thu, 11 Jan 2018 22:22:45 +0200] rev 1255
 
    - things #2
 
    - Thu, 11 Jan 2018 22:21:50 +0200
 
    - by Santeri Piippo [Thu, 11 Jan 2018 22:21:50 +0200] rev 1254
 
    - things
 
    - Thu, 11 Jan 2018 16:46:22 +0200
 
    - by Santeri Piippo [Thu, 11 Jan 2018 16:46:22 +0200] rev 1253
 
    - add operators to LDDocument
 
    - Thu, 01 Mar 2018 11:59:54 +0200
 
    - by Santeri Piippo [Thu, 01 Mar 2018 11:59:54 +0200] rev 1252
 
    - refactor
 
    - Thu, 22 Feb 2018 11:41:58 +0200
 
    - by Santeri Piippo [Thu, 22 Feb 2018 11:41:58 +0200] rev 1251
 
    - Converted magic wand mode and other selection stuff to mvc
 
    - Thu, 15 Feb 2018 14:59:04 +0200
 
    - by Santeri Piippo [Thu, 15 Feb 2018 14:59:04 +0200] rev 1250
 
    - more work on mvc
 
    - Thu, 15 Feb 2018 14:40:59 +0200
 
    - by Santeri Piippo [Thu, 15 Feb 2018 14:40:59 +0200] rev 1249
 
    - convert MainWindow::deleteSelection to mvc
 
    - Thu, 15 Feb 2018 12:19:10 +0200
 
    - by Santeri Piippo [Thu, 15 Feb 2018 12:19:10 +0200] rev 1248
 
    - made lighting more subtle
 
    - Thu, 15 Feb 2018 12:18:57 +0200
 
    - by Santeri Piippo [Thu, 15 Feb 2018 12:18:57 +0200] rev 1247
 
    - converted highlighting to mvc
 
    - Thu, 15 Feb 2018 11:34:04 +0200
 
    - by Santeri Piippo [Thu, 15 Feb 2018 11:34:04 +0200] rev 1246
 
    - used mvc selection models
 
    - Thu, 15 Feb 2018 10:24:39 +0200
 
    - by Santeri Piippo [Thu, 15 Feb 2018 10:24:39 +0200] rev 1245
 
    - more work on mvc
 
    - Wed, 14 Feb 2018 15:17:30 +0200
 
    - by Santeri Piippo [Wed, 14 Feb 2018 15:17:30 +0200] rev 1244
 
    - begin model rework
 
    - Tue, 13 Feb 2018 15:43:55 +0200
 
    - by Santeri Piippo [Tue, 13 Feb 2018 15:43:55 +0200] rev 1243
 
    - removed unneeded stuff
 
    - Tue, 13 Feb 2018 14:56:08 +0200
 
    - by Santeri Piippo [Tue, 13 Feb 2018 14:56:08 +0200] rev 1242
 
    - Removed LDConditionalEdge::becomeEdgeLine
 
    - Tue, 13 Feb 2018 14:22:10 +0200
 
    - by Santeri Piippo [Tue, 13 Feb 2018 14:22:10 +0200] rev 1241
 
    - hook up dataChanged
 
    - Tue, 13 Feb 2018 14:19:07 +0200
 
    - by Santeri Piippo [Tue, 13 Feb 2018 14:19:07 +0200] rev 1240
 
    - changed Model into an MVC list model and replaced the objects list with a view into the model
 
    - Mon, 15 Jan 2018 08:20:54 +0200
 
    - by Santeri Piippo [Mon, 15 Jan 2018 08:20:54 +0200] rev 1239
 
    - add missing switch case
 
    - Sat, 13 Jan 2018 00:06:56 +0200
 
    - by Santeri Piippo [Sat, 13 Jan 2018 00:06:56 +0200] rev 1238
 
    - disable lighting in the selection scene
 
    - Sat, 13 Jan 2018 00:04:54 +0200
 
    - by Santeri Piippo [Sat, 13 Jan 2018 00:04:54 +0200] rev 1237
 
    - moved matrix calculations, added inverted normals for BFC back sides
 
    - Fri, 12 Jan 2018 00:55:31 +0200
 
    - by Santeri Piippo [Fri, 12 Jan 2018 00:55:31 +0200] rev 1236
 
    - BFC INVERTNEXT objects are no longer individual objects
 
    - Fri, 12 Jan 2018 00:22:35 +0200
 
    - by Santeri Piippo [Fri, 12 Jan 2018 00:22:35 +0200] rev 1235
 
    - removed GL_POLYGON_SMOOTH because it causes artifacts
 
    - Fri, 12 Jan 2018 00:20:23 +0200
 
    - by Santeri Piippo [Fri, 12 Jan 2018 00:20:23 +0200] rev 1234
 
    - made GLCamera a non-QObject
 
    - Thu, 11 Jan 2018 15:41:58 +0200
 
    - by Santeri Piippo [Thu, 11 Jan 2018 15:41:58 +0200] rev 1233
 
    - remove GL_POLYGON_SMOOTH because it causes rendering artifacts
 
    - Thu, 11 Jan 2018 15:30:30 +0200
 
    - by Santeri Piippo [Thu, 11 Jan 2018 15:30:30 +0200] rev 1232
 
    - renderer rework
 
    - Thu, 11 Jan 2018 15:09:44 +0200
 
    - by Santeri Piippo [Thu, 11 Jan 2018 15:09:44 +0200] rev 1231
 
    - begin rendering rework
 
    - Thu, 11 Jan 2018 11:41:40 +0200
 
    - by Santeri Piippo [Thu, 11 Jan 2018 11:41:40 +0200] rev 1230
 
    - encoded division slash
 
    - Thu, 11 Jan 2018 00:39:00 +0200
 
    - by Santeri Piippo [Thu, 11 Jan 2018 00:39:00 +0200] rev 1229
 
    - added support for circular 8/-primitives
 
    - Wed, 10 Jan 2018 23:07:01 +0200
 
    - by Santeri Piippo [Wed, 10 Jan 2018 23:07:01 +0200] rev 1228
 
    - simplify
 
    - Wed, 10 Jan 2018 22:54:29 +0200
 
    - by Santeri Piippo [Wed, 10 Jan 2018 22:54:29 +0200] rev 1227
 
    - add support for 8/ in part downloader
 
    - Wed, 10 Jan 2018 22:54:09 +0200
 
    - by Santeri Piippo [Wed, 10 Jan 2018 22:54:09 +0200] rev 1226
 
    - drop Qt4 support
 
    - Sat, 06 Jan 2018 17:57:03 +0200
 
    - by Santeri Piippo [Sat, 06 Jan 2018 17:57:03 +0200] rev 1225
 
    - simplify
 
    - Thu, 04 Jan 2018 22:52:04 +0200
 
    - by Santeri Piippo [Thu, 04 Jan 2018 22:52:04 +0200] rev 1224
 
    - undo config change
 
    - Thu, 04 Jan 2018 22:42:01 +0200
 
    - by Santeri Piippo [Thu, 04 Jan 2018 22:42:01 +0200] rev 1223
 
    - simplified RoundToDecimals
 
    - Thu, 04 Jan 2018 21:41:17 +0200
 
    - by Santeri Piippo [Thu, 04 Jan 2018 21:41:17 +0200] rev 1222
 
    - happy new year 2018
 
    - Thu, 04 Jan 2018 21:40:45 +0200
 
    - by Santeri Piippo [Thu, 04 Jan 2018 21:40:45 +0200] rev 1221
 
    - revamped format.h
 
    - Thu, 04 Jan 2018 20:23:21 +0200
 
    - by Santeri Piippo [Thu, 04 Jan 2018 20:23:21 +0200] rev 1220
 
    - reduce main.cpp
 
    - Thu, 04 Jan 2018 20:21:36 +0200
 
    - by Santeri Piippo [Thu, 04 Jan 2018 20:21:36 +0200] rev 1219
 
    - simplified Matrix
 
    - Thu, 04 Jan 2018 19:52:24 +0200
 
    - by Santeri Piippo [Thu, 04 Jan 2018 19:52:24 +0200] rev 1218
 
    - replaced Origin with default-constructed Vertex
 
    - Thu, 04 Jan 2018 19:44:26 +0200
 
    - by Santeri Piippo [Thu, 04 Jan 2018 19:44:26 +0200] rev 1217
 
    - fix paren style
 
    - 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.
 
    - Sun, 05 Mar 2017 01:57:56 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 05 Mar 2017 01:57:56 +0200] rev 1184
 
    - Polar grid is now togglable.
 
    - Sun, 05 Mar 2017 01:48:46 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sun, 05 Mar 2017 01:48:46 +0200] rev 1183
 
    - CMake fixes
 
    - Sat, 04 Mar 2017 01:59:58 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sat, 04 Mar 2017 01:59:58 +0200] rev 1182
 
    - Added polar grid snapping code.
 
    - Sat, 04 Mar 2017 00:54:46 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sat, 04 Mar 2017 00:54:46 +0200] rev 1181
 
    - Added polar grid rendering (which is disabled for now).
 
    - Fri, 03 Mar 2017 23:23:28 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Fri, 03 Mar 2017 23:23:28 +0200] rev 1180
 
    - Grid::snap now snaps points.
 
    - Fri, 03 Mar 2017 23:16:14 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Fri, 03 Mar 2017 23:16:14 +0200] rev 1179
 
    - Simplified Grid::snap.
 
    - Fri, 03 Mar 2017 23:08:04 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Fri, 03 Mar 2017 23:08:04 +0200] rev 1178
 
    - At long last, the grid is finally now rendered onto the viewport. Woop!
 
    - Fri, 03 Mar 2017 00:35:43 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Fri, 03 Mar 2017 00:35:43 +0200] rev 1177
 
    - Added support for ideal co-ordinates, which should make writing editing tools a lot easier. For some reason they don't yet work with the back and right cameras.
 
    - Thu, 02 Mar 2017 14:45:34 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 02 Mar 2017 14:45:34 +0200] rev 1176
 
    - Removed some unused class stubs and definitions.
 
    - Wed, 01 Mar 2017 12:17:56 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 01 Mar 2017 12:17:56 +0200] rev 1175
 
    - No need for braces there...
 
    - Sat, 25 Feb 2017 17:24:33 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sat, 25 Feb 2017 17:24:33 +0200] rev 1174
 
    - Cleanup ColorSelector, moved direct color composition to a new LDColor constructor.
 
    - Sat, 25 Feb 2017 14:30:10 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Sat, 25 Feb 2017 14:30:10 +0200] rev 1173
 
    - Cleanup ColorSelector::colorButtonClicked()
 
    - Thu, 23 Feb 2017 23:36:59 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 23 Feb 2017 23:36:59 +0200] rev 1172
 
    - Changed QByteArray to QVector to avoid that ugly reinterpret_cast.
 
    - Thu, 23 Feb 2017 23:29:16 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 23 Feb 2017 23:29:16 +0200] rev 1171
 
    - Turned GLRenderer::pixelCapture to GLRenderer::screenCapture() which encapsulates screen capturing properly and returns a ready image.
 
    - Thu, 23 Feb 2017 23:17:10 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 23 Feb 2017 23:17:10 +0200] rev 1170
 
    - Hardened the GLRenderer interface, made methods more private.
 
    - Thu, 23 Feb 2017 23:11:33 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 23 Feb 2017 23:11:33 +0200] rev 1169
 
    - Cleanup GLRenderer::initializeAxes()
 
    - Thu, 23 Feb 2017 22:55:09 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 23 Feb 2017 22:55:09 +0200] rev 1168
 
    - Removed GLRenderer::refresh(), update() does the job just as fine.
 
    - Thu, 23 Feb 2017 22:52:45 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 23 Feb 2017 22:52:45 +0200] rev 1167
 
    - GLRenderer::drawVbos no longer needs to be told the GL type
 
    - Thu, 23 Feb 2017 22:51:55 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 23 Feb 2017 22:51:55 +0200] rev 1166
 
    - Cleanup AlgorithmToolset::subfileSelection.
 
    - Thu, 23 Feb 2017 21:03:59 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 23 Feb 2017 21:03:59 +0200] rev 1165
 
    - Fixed more dialog instances in AlgorithmToolset.
 
    - Thu, 23 Feb 2017 21:02:14 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 23 Feb 2017 21:02:14 +0200] rev 1164
 
    - Moved all UI files from ui/ into src/dialogs/.
 
    - Thu, 23 Feb 2017 20:29:44 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 23 Feb 2017 20:29:44 +0200] rev 1163
 
    - Removed unused class RadioGroup.
 
    - Thu, 23 Feb 2017 20:28:17 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 23 Feb 2017 20:28:17 +0200] rev 1162
 
    - Replaced LDObjectList with QVector<LDObject*>
 
    - Thu, 23 Feb 2017 20:25:47 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 23 Feb 2017 20:25:47 +0200] rev 1161
 
    - Removed the Origin and axes global constants.