mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-30 00:16:56 +03:00
feat(form-decompile,form-compile): ToolTip companion ExtendedTooltip (подсказка расширенной подсказки)
Companion <ExtendedTooltip> (это LabelDecoration) может нести собственный <ToolTip> — реальный текст подсказки (ML), а не пустой Title. Декомпилятор ловил Title/layout/flags/ events компаньона, но НЕ его ToolTip → реальный двуязычный текст молча терялся (форма ВводОстатков/ФормаТовары: расширенная подсказка ЕдиницаИзмеренияТНВЭД). DSL: extendedTooltip.tooltip (ML-текст). Декомпилятор: захват <lf:ToolTip> компаньона (Get-LangText). Компилятор (ps1+py): tooltip в companionStructKeys + эмит <ToolTip> после Title (порядок схемы LabelDecoration). ≠ элементного tooltip обычной подсказки — скоупится вложенностью (могут сосуществовать). Редкое (1 форма в rt-iter), но реальная потеря контента. Форма ВводОстатков → match. Кейс input-fields (ОбычноеПоле: элементный tooltip + extendedTooltip с text+tooltip+events) сертифицирован загрузкой в 1С — оба tooltip сосуществуют. Регресс 43/43, ps1==py. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
abcd5be2b0
commit
03b2b5a64e
@@ -1,4 +1,4 @@
|
||||
# form-compile v1.143 — Compile 1C managed form from JSON or object metadata
|
||||
# form-compile v1.144 — Compile 1C managed form from JSON or object metadata
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
param(
|
||||
[string]$JsonPath,
|
||||
@@ -2547,7 +2547,7 @@ function Emit-Events {
|
||||
$script:companionStructKeys = @(
|
||||
'width','autoMaxWidth','maxWidth','height','autoMaxHeight','maxHeight','verticalAlign','titleHeight',
|
||||
'horizontalStretch','verticalStretch','horizontalAlign','groupHorizontalAlign','groupVerticalAlign',
|
||||
'visible','hidden','enabled','disabled','hyperlink','events',
|
||||
'visible','hidden','enabled','disabled','hyperlink','events','tooltip',
|
||||
'textColor','backColor','borderColor','font','border','цветтекста','цветфона','цветрамки','шрифт','рамка'
|
||||
)
|
||||
function Test-CompanionStructured {
|
||||
@@ -2596,6 +2596,8 @@ function Emit-Companion {
|
||||
Emit-Layout -el $content -indent $inner
|
||||
Emit-Appearance -el $content -indent $inner -profile 'decoration'
|
||||
if ($txtPresent) { Emit-CompanionTitle -content $content -indent $inner }
|
||||
# ToolTip компаньона (подсказка самой расширенной подсказки) — после Title (порядок схемы LabelDecoration)
|
||||
if ($content.tooltip) { Emit-MLText -tag "ToolTip" -text $content.tooltip -indent $inner }
|
||||
# События компаньона (ExtendedTooltip = LabelDecoration: напр. URLProcessing у hyperlink-подсказки)
|
||||
Emit-Events -el $content -elementName $name -indent $inner -typeKey 'label'
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user