assign escbtn and defbtn appropriately

Behaviorally: This change makes it so that Enter will never cancel
a dialog, unless that dialog only contains info to be read. Escape
will never unpredictably be treated as Enter. And some dialogs without
Escape to cancel, now can be canceled with Escape.

A lot of this just refactors dialogs to define the cancel button
at the top, not as a hotkey on a cancel button deep in the XML.
I think this makes enter/escape behavior in dialogxml files more
legible at a glance.
This commit is contained in:
2025-03-27 13:34:44 -05:00
parent 1b65be5ab4
commit 3e3b2e1e6f
95 changed files with 184 additions and 185 deletions

View File

@@ -1,13 +1,13 @@
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<!-- NOTE: This file should be updated to use relative positioning the next time it changes. -->
<?xml-stylesheet href="dialog.xsl" type="text/xsl"?>
<dialog defbtn='save'>
<dialog escbtn='save'>
<pict type='dlog' num='16' top='6' left='6'/>
<text top='6' left='49' width='296' height='47'>
If you exit the dialog now, you may lose changes to special nodes you were previously working on.
Do you want to exit so anyway, or just cancel editing the current node and return to the previous one?
</text>
<button name='save' type='large' top='54' left='31'>Forget It</button>
<button name='cancel' type='large' def-key='esc' top='54' left='136'>Cancel All</button>
<button name='cancel' type='large' top='54' left='136'>Cancel All</button>
<button name='revert' type='large' top='54' left='240'>Just One</button>
</dialog>