about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* make test initializations a little more obviousKartik K. Agaram2022-07-155-156/+162
|
* bugfix: zoom in/out hotkeysKartik K. Agaram2022-07-131-0/+7
| | | | Broken since commit 3b36093553 5 hours ago.
* bugfix: resizeKartik K. Agaram2022-07-132-2/+9
|
* a more radical attempt at ignoring nil y'sKartik K. Agaram2022-07-132-7/+5
|
* no, bring back that defenseKartik K. Agaram2022-07-131-0/+4
| | | | | | | | | Scenario where I ran into it: start a stroke inside a drawing press 'o' to switch to circle mode (but any mode switch will do) The problem is that Text.textinput unconditionally blows away all .y values. Sometimes we have to wait for a draw() to fill them back in.
* a bug I've never run intoKartik K. Agaram2022-07-133-5/+10
| | | | | | The previous commit was failing inside a test that I can't reproduce manually. Perhaps it's something about how often draw/update run in practice. Anyways, it's definitely uncovered a real issue.
* hoist couple of variables outKartik K. Agaram2022-07-131-3/+6
| | | | This seems to uncover a corner case I'd never run into until now.
* use available variablesKartik K. Agaram2022-07-131-1/+1
|
* more idiomatic variable namesKartik K. Agaram2022-07-131-5/+5
|
* chunking by simple local variableKartik K. Agaram2022-07-131-4/+6
|
* make local functions look differentKartik K. Agaram2022-07-131-6/+6
|
* more chunks, same approachKartik K. Agaram2022-07-131-3/+6
|
* chunk up some long linesKartik K. Agaram2022-07-131-32/+32
| | | | | Hopefully this is more approachable. Though now I'm creating two new temporary functions on every draw. Whether I need them or not.
* .Kartik K. Agaram2022-07-121-0/+2
|
* drop final mention of state global beyond main.luaKartik K. Agaram2022-07-121-29/+28
| | | | | | | | | | This is all unfortunate in several ways - lots of functions have extra args - table lookups where we used to have a simple variable - program initialization is a lot more delicate Let's see if it was worthwhile. Can we now actually build around the editor component in forks?
* replace globals with args in a few functionsKartik K. Agaram2022-07-124-78/+81
| | | | | | | | | - Drawing.draw_shape - Drawing.draw_pending_shape - Drawing.in_drawing - Drawing.find_or_insert_point - Drawing.near - Drawing.pixels
* correct a mis-named thresholdKartik K. Agaram2022-07-122-2/+4
|
* drop heavyweight near check on file load/storeKartik K. Agaram2022-07-121-19/+25
|
* deduce left/right from state where possibleKartik K. Agaram2022-07-123-78/+78
|
* left/right margin -> left/right coordinatesKartik K. Agaram2022-07-129-369/+486
| | | | | Editor state initialization now depends on window dimensions, so we have to more carefully orchestrate startup.
* add state arg to a few functionsKartik K. Agaram2022-07-122-26/+26
| | | | | | | - Drawing.current_drawing - Drawing.select_shape_at_mouse - Drawing.select_point_at_mouse - Drawing.select_drawing_at_mouse
* add state arg to a few functionsKartik K. Agaram2022-07-124-121/+107
| | | | | | | | | | | | | - Text.cursor_at_final_screen_line - Text.move_cursor_down_to_next_text_line_while_scrolling_again_if_necessary - Text.snap_cursor_to_bottom_of_screen - Text.in_line - Text.to_pos_on_line - Text.to2 - Text.to1 - Text.previous_screen_line - Text.tweak_screen_top_and_cursor - Text.redraw_all
* add state arg to a few functionsKartik K. Agaram2022-07-123-20/+20
| | | | | - Text.pos_at_start_of_cursor_screen_line - Text.cursor_past_screen_bottom
* add state arg to a few functionsKartik K. Agaram2022-07-121-26/+26
| | | | | | - Text.left - Text.right - Text.right_without_scroll
* add state arg to few functionsKartik K. Agaram2022-07-122-112/+112
| | | | | | - draw_help_without_mouse_pressed - draw_help_with_mouse_pressed - current_shape
* add state arg to a few functionsKartik K. Agaram2022-07-122-41/+41
| | | | | - Text.search_next - Text.search_previous
* add state arg to a few functionsKartik K. Agaram2022-07-124-53/+53
| | | | | | | - record_undo_event - undo_event - redo_event - snapshot
* add state arg to a few functionsKartik K. Agaram2022-07-123-67/+67
| | | | | | | | | | | - Text.draw_highlight - Text.clip_selection - Text.selection - Text.cut_selection - Text.delete_selection - Text.delete_selection_without_undo - Text.mouse_pos - Text.to_pos
* add state arg to a few functionsKartik K. Agaram2022-07-122-124/+124
| | | | | | | | | | | | | - Text.insert_at_cursor - Text.insert_return - Text.pageup - Text.pagedown - Text.up - Text.down - Text.start_of_line - Text.end_of_line - Text.word_left - Text.word_right
* add state arg to Text.textinputKartik K. Agaram2022-07-122-9/+9
|
* add state arg to schedule_saveKartik K. Agaram2022-07-123-19/+19
|
* add state arg to Drawing.updateKartik K. Agaram2022-07-122-8/+8
|
* add state arg to Drawing.drawKartik K. Agaram2022-07-122-16/+16
|
* add state arg to Text.keychord_pressedKartik K. Agaram2022-07-122-105/+105
|
* .Kartik K. Agaram2022-07-121-1/+1
|
* add state arg to Drawing.mouse_releasedKartik K. Agaram2022-07-122-21/+21
|
* add state arg to Drawing.keychord_pressedKartik K. Agaram2022-07-122-33/+33
|
* add state arg to Drawing.mouse_pressedKartik K. Agaram2022-07-122-16/+16
|
* add state arg to some functionsKartik K. Agaram2022-07-123-31/+31
| | | | | | - Text.draw - Text.draw_cursor - Text.draw_search_bar
* call edit rather than App callbacks in testsKartik K. Agaram2022-07-123-188/+231
|
* start passing in Editor_state explicitlyKartik K. Agaram2022-07-124-231/+232
| | | | | | | | | | | | In this commit, top-level edit functions: - edit.draw - edit.update - edit.quit - edit.mouse_pressed - edit.mouse_released - edit.textinput - edit.keychord_pressed - edit.key_released
* initialize contains test stateKartik K. Agaram2022-07-123-88/+4
|
* group all editor globalsKartik K. Agaram2022-07-1211-1964/+1974
| | | | We're still accessing them through a global. But we'll change that next.
* bring couple more globals back to the app levelKartik K. Agaram2022-07-122-24/+21
|
* button framework is at the app levelKartik K. Agaram2022-07-122-3/+4
|
* start decoupling editor tests from AppKartik K. Agaram2022-07-112-100/+100
|
* make colors easier to editKartik K. Agaram2022-07-118-37/+38
|
* experiment: new edit namespaceKartik K. Agaram2022-07-113-416/+463
| | | | | | | | Still lots to do, but the eventual hope is that this will make this project's code easier to reuse from other LÖVE projects. One gotcha: even as we start putting code more aggressively into nested tables, tests must remain at the top-level. Otherwise they won't run.
* stop pretending globals are localKartik K. Agaram2022-07-116-19/+5
| | | | | One advantage of this approach: we don't end up with multiple lexical scopes containing duplicates of the same modules.
* .Kartik K. Agaram2022-07-111-1/+2
|