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 8af5eb6c38
commit 500471bad1
157 changed files with 246 additions and 246 deletions

View File

@@ -1,11 +1,11 @@
<?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='okay'>
<dialog defbtn='okay' escbtn='cancel'>
<field name="number" type='int' top='33' left='90' width='75' height='16'/>
<button name='choose' type='regular' relative='pos neg' rel-anchor='prev' top='3' left='5'>Choose</button>
<pict type='dlog' num='2' top='8' left='8'/>
<text name='prompt' size='large' top='8' left='49' width='193' height='16'>How many?</text>
<button name='cancel' type='regular' top='63' left='70' def-key='esc'>Cancel</button>
<button name='cancel' type='regular' top='63' left='70'>Cancel</button>
<button name='okay' type='regular' top='63' left='141'>OK</button>
</dialog>