Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 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 |
| | |||||
* | intermingle freehand line drawings with text | Kartik K. Agaram | 2022-05-11 | 2 | -7/+87 |
| | |||||
* | confirm that we have access to all of the love API | Kartik K. Agaram | 2022-05-02 | 1 | -4/+14 |
| | | | | | | | | love.graphics.line(1, 1, 500, 500) However, we're now no longer printing results or errors. Time now to design the data model. When do we (re)evaluate code. When do we display results. Where do errors go. | ||||
* | don't rely on defaults | Kartik K. Agaram | 2022-05-02 | 1 | -0/+1 |
| | |||||
* | backspace | Kartik K. Agaram | 2022-05-02 | 1 | -0/+10 |
| | |||||
* | handle chords | Kartik K. Agaram | 2022-05-02 | 2 | -26/+46 |
| | | | | | For shift we'll mostly rely on love.textinput. For the rest I've created a simple driver. | ||||
* | little Lua repl on hitting ctrl-r | Kartik K. Agaram | 2022-05-02 | 1 | -1/+30 |
| | |||||
* | ctrl- and alt- combinations | Kartik K. Agaram | 2022-05-02 | 1 | -0/+6 |
| | |||||
* | handle space key | Kartik K. Agaram | 2022-05-01 | 1 | -0/+2 |
| | | | | We're going to run into a few of these.. | ||||
* | note card | Kartik K. Agaram | 2022-05-01 | 1 | -0/+2 |
| | |||||
* | show cursor | Kartik K. Agaram | 2022-05-01 | 1 | -1/+5 |
| | |||||
* | love2d scaffold | Kartik K. Agaram | 2022-05-01 | 1 | -0/+37 |
| | |||||
* | . | Kartik K. Agaram | 2022-04-25 | 1 | -5/+7 |
| | |||||
* | extract a function | Kartik K. Agaram | 2022-04-25 | 1 | -27/+19 |
| | |||||
* | stop mixing ncurses with print | Kartik K. Agaram | 2022-04-25 | 1 | -5/+13 |
| | |||||
* | copy how Lua 5.3 REPL prints expr values | Kartik K. Agaram | 2022-04-25 | 1 | -10/+21 |
| | |||||
* | repl | Kartik K. Agaram | 2022-04-25 | 1 | -1/+57 |
| | |||||
* | somebody stop me | Kartik K. Agaram | 2022-04-25 | 1 | -0/+6 |