Isaiah Odhner
ab690e8f5c
Add localization folder from JS Paint
...
This folder was last updated at this commit:
4a9163fb6d
2023-04-18 00:30:05 -04:00
Isaiah Odhner
6fbcbf9ec3
Refactor ync
flag to button_types
argument, to support OK-only dialogs
2023-04-17 23:32:20 -04:00
Isaiah Odhner
d950295df7
Simply close the Open dialog if you select the open file
2023-04-17 23:09:13 -04:00
Isaiah Odhner
8ec24a8fdc
Prompt to save changes when unloading a document
...
- Confirm discarding changes for Open, New, or Exit, including for
exit via Ctrl+C which was previously handled by a built-in binding.
- Await Save As dialog closing, including when Save triggers Save As.
This is my first time using asynchronous features in Python,
(as far as I remember,) so it's a bit messy.
- Make DialogWindow callback also for Cancel, which means all
DialogWindow usage sites care what button is selected.
- Send RequestClose event for Esc key.
2023-04-17 23:09:13 -04:00
Isaiah Odhner
7497a7dd5b
Tweak overwrite dialog layout
...
- Reduce height, to fit to content
- Reduce button width, to avoid clipping
2023-04-17 03:12:30 -04:00
Isaiah Odhner
0125374bba
Ctrl+MMB to colorize without adding borders to inspect layout without modifying it
2023-04-17 03:12:30 -04:00
Isaiah Odhner
4ee5efe85c
Make a filled Unicode warning icon with a border
2023-04-17 03:12:30 -04:00
Isaiah Odhner
a948d7d945
Note parallelogram candidates for eraser icon
2023-04-17 01:57:27 -04:00
Isaiah Odhner
22a251276b
Use Unicode for warning icon text art
2023-04-17 01:45:20 -04:00
Isaiah Odhner
5c289e05a8
Add dev helper to inspect layout
2023-04-17 01:21:19 -04:00
Isaiah Odhner
357b68d624
Show file name only, not full path, in Header
2023-04-16 21:12:44 -04:00
Isaiah Odhner
728b4c53b9
Fix Open/Save As dialog starting location when file opened with relative path
...
The directory tree wasn't expanded because it was searching for e.g.
LICENSE.txt at the root of the filesystem (or perhaps AS the root?)
2023-04-16 21:12:03 -04:00
Isaiah Odhner
4ef6c07826
Add Header to show the current file name
2023-04-16 21:05:55 -04:00
Isaiah Odhner
a69851d1bf
Let menu buttons vary in width
2023-04-16 20:35:09 -04:00
Isaiah Odhner
a02431d19e
Add --theme option to CLI
2023-04-16 20:34:56 -04:00
Isaiah Odhner
650584d4b2
Add usage section to readme
2023-04-16 19:38:53 -04:00
Isaiah Odhner
59c289eaee
Update development section
2023-04-16 19:23:00 -04:00
Isaiah Odhner
8929ed14b6
Clear screen during development to avoid seeing fixed errors
2023-04-16 18:54:49 -04:00
Isaiah Odhner
fea4259876
Remove vertical padding and bottom border from tool box
2023-04-16 18:43:08 -04:00
Isaiah Odhner
ea1e6751a9
VS Code: Add personal workspace containing this project and textual
...
Maybe I should ignore this file since it's unlikely to work on other computers...
2023-04-16 18:34:29 -04:00
Isaiah Odhner
bd6ac3dd5f
VS Code: Use textual run
for "Open A File in App" launch task
2023-04-16 16:04:06 -04:00
Isaiah Odhner
cb6b4403a3
Handle passing arguments via textual run
...
It took a while to figure out this magic.
`textual run --help` says:
> If you are running a file and want to pass command line arguments, wrap the
> filename and arguments in quotes:
>
> textual run "foo.py arg --option"
But it doesn't describe how to handle those arguments.
2023-04-16 16:01:24 -04:00
Isaiah Odhner
3f23a13fe1
Fix mouse coordinates for brush preview when scrolled
...
Don't hackily offset mouse coordinates when mouse not down
2023-04-16 15:22:38 -04:00
Isaiah Odhner
23ca2b7113
Refactor tool button CSS class handling, and remove unused tool_button class
2023-04-16 02:08:07 -04:00
Isaiah Odhner
eeaee41747
Submit dialogs with enter, unless a button has focus
2023-04-16 02:03:28 -04:00
Isaiah Odhner
79ef514eb2
Make sure not to save the document with a brush preview
2023-04-16 00:50:12 -04:00
Isaiah Odhner
35e93210c8
Close dialogs with Escape key
2023-04-16 00:16:15 -04:00
Isaiah Odhner
7aab466964
Add Cancel button to Open dialog
2023-04-16 00:11:59 -04:00
Isaiah Odhner
d4becd2da0
Refactor dumb button handling using new class DialogWindow
2023-04-16 00:11:59 -04:00
Isaiah Odhner
accc2fe85b
Fix AttributeError for "parent_menu.focus" for menu bar (top level menu)
2023-04-15 23:50:45 -04:00
Isaiah Odhner
ddd89d367b
Hide brush preview when you stop hovering over the canvas
2023-04-15 23:45:44 -04:00
Isaiah Odhner
faabe2c88e
Play bell/beep when prompting file overwrite confirmation
2023-04-15 23:07:22 -04:00
Isaiah Odhner
ba3ecaa39a
Close window only for known buttons
2023-04-15 22:40:10 -04:00
Isaiah Odhner
da3d3b0f06
Rename Save As dialog IDs to match Open dialog IDs
...
It's a bit verbose, but for Open, I wanted the _dialog part since "open"
can be both a verb and an adjective, and I didn't like it reading as an
adjective. It doesn't technically disambiguate it, but it reads better.
Verb "[to] open", noun "[dialog to] open", adjective "[part of the dialog to] open"
Adjective "[is] open", noun "[dialog that is] open", adjective "[part of the dialog that is] open"
Anyways this commit just makes it consistent.
Perhaps I could use classes more in place of IDs.
2023-04-15 22:37:15 -04:00
Isaiah Odhner
73d8f04329
Enable dragging windows by their title bars
2023-04-15 22:18:45 -04:00
Isaiah Odhner
e988bf787f
Move window layout fix to Window
2023-04-15 22:04:15 -04:00
Isaiah Odhner
8f5bbe9635
Fix incorrect window layouts
2023-04-15 21:47:14 -04:00
Isaiah Odhner
fc3249371c
Fix title bar height / invisible close icon
2023-04-15 21:39:57 -04:00
Isaiah Odhner
774547e6f8
Fix opening files outside the current directory (with Open dialog)
2023-04-15 21:19:07 -04:00
Isaiah Odhner
47622bf437
Make menu popups wider
2023-04-15 21:16:18 -04:00
Isaiah Odhner
f51f1d9b8c
Implement File > Open dialog
2023-04-15 21:11:44 -04:00
Isaiah Odhner
009a06e82b
VS Code: disable justMyCode debugger feature
2023-04-15 20:54:35 -04:00
Isaiah Odhner
4334d60681
Add File > Exit menu item
...
I'm leaving the "Quit" naming in the keybindings, because it's Ctrl+Q,
and if the keybindings are ever displayed, that's the mnemonic.
2023-04-15 20:53:53 -04:00
Isaiah Odhner
7d433cc27b
Refactor expand_directory_tree and make it a method
2023-04-15 20:39:00 -04:00
Isaiah Odhner
ce2fbe44bb
Allow browsing the whole filesystem, but expand to the current directory
...
This relies on some API internals: tree._get_label_region and node._line
2023-04-15 20:27:19 -04:00
Isaiah Odhner
63f947e7f4
Fix confirmation dialog button functionality
2023-04-15 02:18:36 -04:00
Isaiah Odhner
e814dd6637
Add ASCII art warning icon to confirmation dialog
2023-04-15 01:59:16 -04:00
Isaiah Odhner
b5e0ec8438
Confirm overwriting files
...
A Textual layout bug is unfortunately making the Yes button HUGE,
and the No button INVISIBLE, until you mouse over the dialog, which is
pretty funny...
"<file> already exists. Do you want to replace it? [Yes]"
2023-04-15 01:49:08 -04:00
Isaiah Odhner
a5b217b3cd
Add directory tree to Save As dialog
2023-04-15 01:25:58 -04:00
Isaiah Odhner
c2e86d5eae
Implement Save As dialog
2023-04-15 00:57:43 -04:00