Skip to content

A GTK3 hierarchical markdown notetaking application with tablet support.

License

Notifications You must be signed in to change notification settings

thomaskole/notekit

 
 

Repository files navigation

This Fork

The fork serves as a proof-of-concept for intergrated ruler functionality in Notekit. The rulers are available seamlessly, and allow the user to freehand draw various geometric lines, all while in freehand draw mode.

Cartesian ruler

the Cartesian (x-y) ruler is available under shift. While holding down shift, the user chooses a direction by drawing left-right or up-down. The cursor is then limited to the start x- or y-value.

Cartesian example

Polar ruler

The polar ruler allows the user to draw arbirary diagonal lines, or circles like a compass. This functionality is available under ctrl. When you press this button, a center point is placed. Like the cartesian ruler, the polar ruler chooses a direction based on the first move. Away or towards the center results in a diagonal line, parallel to it results in a circle.

Polar example

Possible improvements

Polar feedback

There is not enough feedback to the user about the Polar ruler mode. A cross could be drawn on the center location when ctrl is held, and a bit of information could be shown about distance. This makes the compass feel more like an actual compass, too.

Polar example

Vector math

A simple vector math library would be very helpful, and would make the code a lot more readable

Direction decision

Right now, both rulers immediately choose a direction upon moving the cursor. While using a mouse, this seems to result in predictable movement, but the jitter of a graphics tablet makes this less predictable. Sometimes you end up drawing horizontal where you meant to be drawing vertical, and vice-versa. Same goes for the Polar ruler.

About

A GTK3 hierarchical markdown notetaking application with tablet support.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 86.3%
  • Makefile 7.9%
  • CMake 3.4%
  • CSS 2.4%