Commit graph

31 commits

Author SHA1 Message Date
sheaf a4e9c1cf32 preparation for interval arithmetic 2023-01-13 06:32:34 +01:00
sheaf cca4558985 put all colours into a separate CSS file 2023-01-08 21:12:00 +01:00
sheaf 5bd4e7f4cf framework for brush differentiation 2023-01-08 17:16:14 +01:00
sheaf 4e15380c7e use diagrams to parse MetaFont paths 2022-02-13 17:30:54 +01:00
sheaf 64e45f126b Refactor module hierarchy, use internal records 2022-02-11 22:05:13 +01:00
sheaf eba08a6edd add first-class functions to brush language 2021-05-25 13:45:21 +02:00
sheaf 9f16cff978 fix brush join orientations 2021-05-13 22:07:49 +02:00
sheaf e1c5d266eb embed brushes inline into strokes 2021-04-26 01:17:27 +02:00
sheaf c3bcce58a7 use ?self to address pointer ownership warnings 2021-04-25 01:59:15 +02:00
sheaf 1b0382f3b0 Switch to GTK4 2021-04-21 15:08:33 +00:00
sheaf ab3a12c983 use assertions instead of errors, minor linting 2020-11-15 06:28:48 +01:00
sheaf 1e4bb4bddc implement a basic brush store
* each stroke stores the brushes it uses by reference,
    so that one can interactively edit brushes
    and see the strokes be updated in real-time
  * when writing to a file, we retrive the brush code
    from the reference, and include that information statically
2020-11-14 23:32:23 +01:00
sheaf 393ef6f06e Implement programmable brush framework 2020-11-12 17:34:46 +00:00
sheaf e3d920573d add debug mode to visualise fitting algorithm 2020-09-14 06:03:45 +02:00
sheaf d501fcb76a add ruler ticks
* also includes some improvements to Cairo pixel alignment
2020-09-07 15:44:08 +02:00
sheaf 031d72a69b create/move/delete guides: drag from ruler area 2020-09-06 00:40:56 +02:00
sheaf 264fa8dff0 dynamic file tab close button behaviour 2020-09-04 22:51:47 +02:00
sheaf 101d9515c0 update file tabs dynamically 2020-09-01 21:56:59 +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 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 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 07f9981c41 update infobar, mouse focus zoom, module refactor 2020-08-11 00:07:09 +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 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