feat(form-decompile,form-compile): WarningOnEdit на check/radio/labelField (не только input)

`<WarningOnEdit>` (мультиязычный текст предупреждения при редактировании)
встречается на InputField (576), CheckBoxField (119), RadioButtonField (54),
LabelField (1) по корпусу 8.3.24, но компилятор эмитил и декомпилятор ловил его
только у InputField → терялся на check/radio/labelField.

Расширил эмиссию (Emit-Check/Emit-Radio/Emit-LabelField, после Emit-Layout перед
Format) + захват в декомпиляторе (инлайн SelectSingleNode+Get-LangText в трёх
обработчиках, как у InputField). Парный enum `warningOnEditRepresentation`
(Show/DontShow) уже был generic-скаляром на любом поле — не трогаю. 1С толерантна
к позиции тега внутри поля (сертифицировано загрузкой).

Зеркало py (байт-в-байт). Выборка 46 форм с WarningOnEdit на check/radio:
0 потерь WarningOnEdit. Кейсы input-fields (+check multilang, +labelField) и
radio-tumbler-strings (+radio) сертифицированы в 1С. Регресс 43/43 (ps1+py).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-06-11 16:04:15 +03:00
parent 606ac10fdb
commit c4f600a36b
8 changed files with 47 additions and 6 deletions
@@ -55,6 +55,12 @@
<DataPath>ОбычноеПоле</DataPath>
<TitleLocation>Left</TitleLocation>
<Hiperlink>true</Hiperlink>
<WarningOnEdit>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Поле только для чтения</v8:content>
</v8:item>
</WarningOnEdit>
<Format>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -355,6 +361,16 @@
</Title>
<CheckBoxType>Auto</CheckBoxType>
<TitleLocation>Right</TitleLocation>
<WarningOnEdit>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Изменение флага требует подтверждения</v8:content>
</v8:item>
<v8:item>
<v8:lang>en</v8:lang>
<v8:content>Confirm flag change</v8:content>
</v8:item>
</WarningOnEdit>
<ContextMenu name="ФлагКонтекстноеМеню" id="32"/>
<ExtendedTooltip name="ФлагРасширеннаяПодсказка" id="33">
<Width>45</Width>