Commit Graph

341 Commits

Author SHA1 Message Date
Isaiah Odhner
b7d14f02bd Add an empty status bar 2023-04-23 22:22:28 -04:00
Isaiah Odhner
eb3b93d454 Require both clicks to be on the same button for a double click 2023-04-23 21:51:44 -04:00
Isaiah Odhner
8136383bca Return to previous tool after using Magnifier or Pick Color tool 2023-04-23 19:51:12 -04:00
Isaiah Odhner
70cb60218f Close menus if clicking outside the menus 2023-04-23 19:42:49 -04:00
Isaiah Odhner
fc35e34153 Use Binding(...) for all bindings, for easy access to priority/show args 2023-04-23 17:22:12 -04:00
Isaiah Odhner
d411b84605 Fix CharInput blocking Ctrl+A, Ctrl+W, etc. 2023-04-23 17:20:08 -04:00
Isaiah Odhner
a07606fc70 Navigate buttons with left/right or up/down in message boxes 2023-04-23 15:43:45 -04:00
Isaiah Odhner
cde031f70d Restore Ctrl+C to quit (for now) 2023-04-23 15:42:12 -04:00
Isaiah Odhner
138776456d Combine bindings, using comma separation 2023-04-23 15:41:41 -04:00
Isaiah Odhner
286852616b Remove meta+q binding for Quit
I was going to include meta as an alternative for all shortcuts, for
macOS, but I don't know if this works, and it's a little silly having
just one shortcut with meta like this.
2023-04-23 15:41:41 -04:00
Isaiah Odhner
0e1e43a67b Enable bindings for unimplemented actions
Might as well show the "Not implemented" dialog for keyboard shortcuts.
2023-04-23 15:02:50 -04:00
Isaiah Odhner
f93a884e74 Update the palette when double clicking to edit a color 2023-04-23 14:58:17 -04:00
Isaiah Odhner
60ff2c27f8 Fix Cancel buttons in Edit Colors and Choose Character dialogs 2023-04-23 14:50:56 -04:00
Isaiah Odhner
1b76caa23e Fix double click detection in color palette
Duh, just use the button press handler.
2023-04-23 14:36:05 -04:00
Isaiah Odhner
22547da2b2 Start making Edit Colors dialog
It's just a larger palette so far.
2023-04-23 14:29:51 -04:00
Isaiah Odhner
e76ce9e721 Fix out of bounds array access for Pick Color tool 2023-04-23 13:50:41 -04:00
Isaiah Odhner
f950c9964b Stamp the selection with Ctrl 2023-04-23 02:14:28 -04:00
Isaiah Odhner
9f6a8fd559 Trap focus within window when cycling with Tab / Shift+Tab
Too easy!
2023-04-23 02:09:40 -04:00
Isaiah Odhner
4dc7bc08d6 Make paint.py executable 2023-04-23 01:46:49 -04:00
Isaiah Odhner
edc0048ecc Half-implement menu item hotkeys 2023-04-23 01:43:54 -04:00
Isaiah Odhner
031a0a3e72 Implement Select All 2023-04-23 01:24:43 -04:00
Isaiah Odhner
1a6bfb5b90 Lazily add a triangle to indicate the Zoom submenu 2023-04-23 01:03:52 -04:00
Isaiah Odhner
f106cc5c35 Gray out unimplemented menu items 2023-04-23 00:51:29 -04:00
Isaiah Odhner
dbce1434cd Constrain selection so it doesn't go completely outside the document bounds 2023-04-23 00:11:17 -04:00
Isaiah Odhner
cb0db3b6e6 Deselect when clicking outside the canvas 2023-04-23 00:01:57 -04:00
Isaiah Odhner
49bd80b17a Fix out of bounds array access for Free-Form Select 2023-04-22 23:51:12 -04:00
Isaiah Odhner
74dceee2f3 Implement Free-Form Select tool 2023-04-22 23:03:09 -04:00
Isaiah Odhner
42fdbe83d7 Fix unused parameter to erase_region
Why wasn't this reported?
2023-04-22 21:57:58 -04:00
Isaiah Odhner
505605c660 Add typing to preprocess.py script that I'm not using
ChatGPT did most of this for me. I just said "Please add type annotations to this code. Surround the code in a Markdown code block."
and then fixed the Generator and the lambda.
2023-04-22 21:53:51 -04:00
Isaiah Odhner
5d778c1879 Annotate **kwargs as Any 2023-04-22 21:44:05 -04:00
Isaiah Odhner
11f3319ced Complete type checking of file I'm not even using 2023-04-22 21:18:05 -04:00
Isaiah Odhner
625324e66b Fix BorderDefinition typing 2023-04-22 21:11:47 -04:00
Isaiah Odhner
2d88529bc0 Guess at how to typecheck this parametric event type 2023-04-22 21:08:38 -04:00
Isaiah Odhner
2c8f79e37a Shorten code and help the type checker understand that this isn't None
dhooo short
2023-04-22 21:08:38 -04:00
Isaiah Odhner
3d419f13b3 Remove unused NAME_MAP code from calculator example 2023-04-22 20:53:13 -04:00
Isaiah Odhner
9f06373cb7 Add a bunch more type checking hints/assertions 2023-04-22 20:51:51 -04:00
Isaiah Odhner
2c8d74808a Add a whole bunch more type checking 2023-04-22 18:54:21 -04:00
Isaiah Odhner
1384fd1670 Enable strict type checking for all files... 2023-04-22 18:53:36 -04:00
Isaiah Odhner
f70a062b9b Strictly type check enhanced_directory_tree.py, ignoring private access 2023-04-22 18:04:38 -04:00
Isaiah Odhner
2e839b2564 Clean up unused imports 2023-04-22 17:49:15 -04:00
Isaiah Odhner
4f8ea8a93d Strictly type check i18n.py 2023-04-22 17:45:04 -04:00
Isaiah Odhner
a8f174eb8e Fix the last type checking error, and simply --reload-on-changes
Hopefully this makes it more robust as well...
2023-04-22 17:29:41 -04:00
Isaiah Odhner
2827457497 Fix default document size
Broken in "Start type checking code" 1b56d78f70
2023-04-22 14:55:22 -04:00
Isaiah Odhner
da62add6c1 Avoid "possibly unbound" errors 2023-04-22 14:24:49 -04:00
Isaiah Odhner
3b2b383595 Assert a few more specific types 2023-04-22 14:24:49 -04:00
Isaiah Odhner
2a7427c5c8 Make Pyright happy with EnhancedDirectoryTree scrolling
- Don't use a lambda so it doesn't return something
- Assert region is found (not None)
2023-04-22 14:24:49 -04:00
Isaiah Odhner
91dd804f4a Fix type annotation for interpolations (*varargs gives a tuple) 2023-04-22 14:24:49 -04:00
Isaiah Odhner
00ab062d3e Assert type so Pyright knows about .plain and .markup 2023-04-22 13:58:09 -04:00
Isaiah Odhner
7cd44c0abe Ignore border_title
I found these "type: ignore" comments where border_title is defined,
and copied 'em!
2023-04-22 13:46:02 -04:00
Isaiah Odhner
27c9646b20 DRY window closing and make type checker happy with an assertion 2023-04-22 13:46:02 -04:00