Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | bugfix: text sometimes getting colored like drawing borders | Kartik K. Agaram | 2022-05-15 | 1 | -0/+2 | |
| | ||||||
* | delete an ancient, unused file | Kartik K. Agaram | 2022-05-15 | 1 | -75/+0 | |
| | ||||||
* | load/save remaining shapes | Kartik K. Agaram | 2022-05-15 | 1 | -14/+18 | |
| | ||||||
* | forgot to add json.lua | Kartik K. Agaram | 2022-05-15 | 1 | -0/+388 | |
| | ||||||
* | load/save freehand strokes | Kartik K. Agaram | 2022-05-15 | 1 | -2/+18 | |
| | | | | Also found a couple of bugs in the process. | |||||
* | starting to load/save | Kartik K. Agaram | 2022-05-15 | 1 | -4/+65 | |
| | ||||||
* | more intuitive point delete from polygons | Kartik K. Agaram | 2022-05-15 | 1 | -2/+18 | |
| | ||||||
* | delete points or shapes | Kartik K. Agaram | 2022-05-14 | 1 | -12/+50 | |
| | | | | Deleting a point deletes all shapes that use it (but not other points in those shapes). | |||||
* | slightly less strange now that we have the same two ways to move points as ↵ | Kartik K. Agaram | 2022-05-14 | 1 | -6/+18 | |
| | | | | | | | any other operation 1. hover over point, hit C-v 2. press mouse on point, hit v | |||||
* | slightly strange way to move points | Kartik K. Agaram | 2022-05-14 | 1 | -5/+44 | |
| | | | | | | | | | | | | Hover mouse on a point, hit a hotkey (C-v), then move mouse without clicking, and click to finalize. The hotkey is like a pointer tool, except you have to already be at the thing you want to erase. And it's slightly inconvenient to move multiple points one by one. In the process I also fixed a bug: keychord clauses should always specify the mouse button state. | |||||
* | changing your mind mid-shape | Kartik K. Agaram | 2022-05-14 | 1 | -2/+30 | |
| | | | | | | | | | line->circle circle->line line->polygon polygon->line circle->polygon polygon->circle | |||||
* | new mode: circle arc | Kartik K. Agaram | 2022-05-14 | 1 | -0/+81 | |
| | | | | | We start out drawing a circle, but instead of releasing the mouse we hit 'a'. | |||||
* | new mode: circle | Kartik K. Agaram | 2022-05-14 | 1 | -0/+28 | |
| | ||||||
* | new mode: polygon | Kartik K. Agaram | 2022-05-14 | 1 | -0/+55 | |
| | | | | | Polygons are closed. Add vertices to them by pressing 'p' while holding down the mouse. | |||||
* | . | Kartik K. Agaram | 2022-05-14 | 1 | -1/+1 | |
| | ||||||
* | bugfix: clipping in line and manhattan mode | Kartik K. Agaram | 2022-05-14 | 1 | -13/+29 | |
| | | | | Thanks Kiran and Ravi. | |||||
* | new mode: manhattan | Kartik K. Agaram | 2022-05-14 | 1 | -2/+41 | |
| | ||||||
* | . | Kartik K. Agaram | 2022-05-14 | 1 | -2/+2 | |
| | ||||||
* | make points easier to acquire | Kartik K. Agaram | 2022-05-14 | 1 | -4/+8 | |
| | ||||||
* | make point near focus 'pop' | Kartik K. Agaram | 2022-05-14 | 1 | -1/+3 | |
| | ||||||
* | snap lines to nearby points | Kartik K. Agaram | 2022-05-14 | 1 | -1/+3 | |
| | ||||||
* | add a level of indirection to vertices of shapes | Kartik K. Agaram | 2022-05-14 | 1 | -37/+68 | |
| | | | | This is like Sketchpad. | |||||
* | . | Kartik K. Agaram | 2022-05-14 | 1 | -1/+1 | |
| | ||||||
* | draw lines by default | Kartik K. Agaram | 2022-05-14 | 1 | -1/+1 | |
| | | | | Freehand strokes are a special case. Let's ignore them for a bit. | |||||
* | bugfix: keep the click to create a new drawing from creating a new shape in ↵ | Kartik K. Agaram | 2022-05-14 | 1 | -14/+14 | |
| | | | | | | the drawing Easiest way to do this is to keep the screen areas for button and drawing disjoint. | |||||
* | experimental approach to combining keyboard and mouse while drawing | Kartik K. Agaram | 2022-05-14 | 1 | -0/+36 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Desired properties: - fluently draw lots of precise drawings - requires expressing lots of different kinds of constraints - always know what pressing a key is going to do - when typing, don't care where the mouse pointer is Less important: - discoverability, learnability. Provide a hotkey for help. Current plan: - chorded keys to modify drawings while mouse button is not pressed - unchorded keys to modify drawings only while mouse button is pressed - make changes while drawing a shape by pressing a key while mouse button is pressed - make changes to a drawing by hovering mouse pointer at a shape and pressing a key (unary operators) - add constraints after drawing by hovering mouse pointer at a shape, pressing a key and moving mouse pointer to a second shape (binary operators) - almost any change can be made to a shape after it's drawn (inspired by Sketchpad) - keys pressed while drawing a shape act as abbreviations to performing the action after drawing First example in this PR: - you press mouse button, start drawing freehand - you realize you want a simple line, not a freehand stroke - without releasing the mouse button, you press 'l' - now you're drawing a straight line You could also release the mouse button and finish the stroke, then press 'ctrl-l' while hovering the mouse pointer on the stroke to turn it into a line. There's an asymmetry here. Strokes require a lot more information, so while you can turn a stroke into a line, you can't turn a line into a stroke. Strokes are an exception where you can't switch to freehand mode after you start drawing. You have to press C-f before drawing. | |||||
* | bugfix | Kartik K. Agaram | 2022-05-14 | 1 | -1/+1 | |
| | ||||||
* | beginnings of support for multiple shapes | Kartik K. Agaram | 2022-05-14 | 1 | -43/+114 | |
| | ||||||
* | color close to drawing | Kartik K. Agaram | 2022-05-14 | 1 | -1/+1 | |
| | ||||||
* | Devine's suggestion to try to live with just freehand | Kartik K. Agaram | 2022-05-14 | 1 | -0/+17 | |
| | | | | | | | | | | | | https://merveilles.town/@neauoire/108301005736317873 Drawbacks: Smoothing eliminates high-frequency noise but not low-frequency bumps. Making a drawing end at the start point is very challenging. Still perhaps a useful addition to the toolbox for now. I'm going to need a cambrian explosion of tools in the toolbox for a while before I prune. | |||||
* | revert: back to freehand | Kartik K. Agaram | 2022-05-14 | 1 | -21/+44 | |
| | ||||||
* | switch from freehand to just straight lines | Kartik K. Agaram | 2022-05-13 | 1 | -44/+21 | |
| | ||||||
* | store device-independent coordinates inside drawings | Kartik K. Agaram | 2022-05-12 | 1 | -11/+25 | |
| | ||||||
* | slightly tweak boundary between concerns | Kartik K. Agaram | 2022-05-12 | 1 | -1/+1 | |
| | ||||||
* | fix a typo | Kartik K. Agaram | 2022-05-12 | 2 | -2/+2 | |
| | ||||||
* | make space for multiple kinds of width | Kartik K. Agaram | 2022-05-12 | 1 | -3/+3 | |
| | ||||||
* | fix 2 bugs in line selection | Kartik K. Agaram | 2022-05-11 | 1 | -2/+5 | |
| | ||||||
* | turn strokes into horizontal and vertical lines | Kartik K. Agaram | 2022-05-11 | 1 | -0/+16 | |
| | ||||||
* | refactor | Kartik K. Agaram | 2022-05-11 | 1 | -8/+15 | |
| | ||||||
* | simplest possible way to straighten strokes | Kartik K. Agaram | 2022-05-11 | 1 | -0/+21 | |
| | ||||||
* | more lightweight; select just the stroke at the mouse | Kartik K. Agaram | 2022-05-11 | 1 | -11/+2 | |
| | ||||||
* | selecting a stroke | Kartik K. Agaram | 2022-05-11 | 1 | -2/+47 | |
| | ||||||
* | bugfix: restrict strokes to the drawing they started in | Kartik K. Agaram | 2022-05-11 | 1 | -4/+15 | |
| | ||||||
* | reorg | Kartik K. Agaram | 2022-05-11 | 1 | -4/+4 | |
| | ||||||
* | spacing | Kartik K. Agaram | 2022-05-11 | 1 | -3/+3 | |
| | ||||||
* | inline | Kartik K. Agaram | 2022-05-11 | 1 | -5/+1 | |
| | ||||||
* | rename | Kartik K. Agaram | 2022-05-11 | 1 | -3/+4 | |
| | ||||||
* | clean up repl functionality | Kartik K. Agaram | 2022-05-11 | 2 | -32/+49 | |
| | | | | Now we have separate keywords for returning vs drawing something. | |||||
* | clip drawings inside the border | Kartik K. Agaram | 2022-05-11 | 1 | -2/+2 | |
| | ||||||
* | lighter border for figures | Kartik K. Agaram | 2022-05-11 | 1 | -1/+2 | |
| |