Commit graph

236 commits

Author SHA1 Message Date
sheaf 7033578e20 refactor: separation of event handling and actions 2020-09-02 04:52:08 +02:00
sheaf 101d9515c0 update file tabs dynamically 2020-09-01 21:56:59 +02:00
sheaf 8a6b4f5391 encode/decode documents to JSON using waargonaut 2020-08-31 22:28:30 +02:00
sheaf 9c5f8b1198 use correct applicative operation for brush lerp 2020-08-31 01:59:14 +02:00
sheaf 9e73da9fff implement selection & drag-move in brush mode 2020-08-29 22:19:51 +02:00
sheaf dfa446254a adjust what is rendered in different modes 2020-08-29 20:50:02 +02:00
sheaf 9bde44ed42 fix brush stroke point order for open brush path
* also: add some preset brushes
2020-08-29 19:41:07 +02:00
sheaf 62bb1451c5 curve fitting: implement recursive subdivision 2020-08-29 18:26:11 +02:00
sheaf d4561ad549 use the correct tangent vector for stroke joins 2020-08-29 16:34:51 +02:00
sheaf 3916fe2656 compute and render brush stroke outlines 2020-08-29 03:03:29 +02:00
sheaf b3941a2834 use hmatrix for least squares solving
* this fixes the convergence problems of cubic Bézier curve fitting
2020-08-26 00:41:34 +02:00
sheaf f16ac3fa93 fitting a cubic Bézier to a sequence of points
* WIP: current code exhibits convergence issues / instability
2020-08-24 10:55:39 +02:00
sheaf 86a1426136 start implementing brush mode 2020-08-20 03:57:26 +02:00
sheaf e8c77befd6 split out stroke code to library 2020-08-19 23:34:43 +02:00
sheaf e044b1b06c stroking: compute offset given tangent vector 2020-08-19 17:41:15 +02:00
sheaf 107b27ebca implement deletion of selection 2020-08-19 05:28:47 +02:00
sheaf 0f2eddab80 ctrl while drawing moves previous control point 2020-08-17 01:02:34 +02:00
sheaf 596821222f implement drawing with the pen tool 2020-08-17 00:09:16 +02:00
sheaf 38c4e9fa6c add mouse drag-move operation 2020-08-15 23:49:14 +02:00
sheaf 10dccd1dad update selected objects on selection event 2020-08-15 19:11:52 +02:00
sheaf 91e1431306 add selection UI 2020-08-14 00:47:10 +02:00
sheaf 8d50c92ca9 highlight points for hover/selection 2020-08-13 19:58:54 +02:00
sheaf ae0ac23910 draw Bézier curves and connecting lines 2020-08-12 23:23:25 +02:00
sheaf 2bd6847e78 add root solving code, coalesce event handling 2020-08-12 22:43:47 +02:00
sheaf d74d4fd5cc use fixed number of digits in infobar 2020-08-11 12:22:56 +02:00
sheaf 07f9981c41 update infobar, mouse focus zoom, module refactor 2020-08-11 00:07:09 +02:00
sheaf 9fc7b8acb3 basic rendering, mousewheel scrolling 2020-08-10 16:38:27 +02:00
sheaf 8e051c0f14 add panels 2020-08-08 15:53:06 +02:00
sheaf 62ea168667 add info bar 2020-08-08 05:33:35 +02:00
sheaf c9394cc23f toolbar improvements, better colours 2020-08-08 00:41:08 +02:00
sheaf cc96802f8e window icons, tool bar 2020-08-07 21:39:24 +02:00
sheaf 9bc8e096c9 file tab close buttons 2020-08-06 05:09:52 +02:00
sheaf 267b91cee8 file selection bar 2020-08-06 02:45:20 +02:00
sheaf 4e41b5c294 center title, paned viewport 2020-08-05 23:30:36 +02:00
sheaf f224c6b738 add MenuBar 2020-08-05 22:23:16 +02:00
sheaf c9e702e660 WIP 2020-08-04 08:43:25 +02:00