mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-28 21:15:54 +03:00
fix(cfe-borrow): стандартные картинки элементов остаются в заимствованной форме
Навык вырезал у элементов заимствованной формы все StdPicture.*, кроме Print. Сверка с Конфигуратором 8.3.27 (заимствование форм УТ с основным реквизитом и без) правило опровергла: у кнопок, подменю и страниц — в командной панели формы, контекстных меню и теле формы — стандартная картинка остаётся в обеих частях формы байт в байт, 26 элементов из 26. Выбрасывается только картинка декорации, это уже учтено. Вырезание убрано в обоих портах, v1.39. На шести эталонах Конфигуратора картинки элементов и заимствованные общие картинки теперь совпадают полностью. Спецификация (§5.5.2) приведена к фактическому поведению, включая файлы встроенных картинок. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
69745af336
commit
868ba8db49
@@ -1,4 +1,4 @@
|
||||
# cfe-borrow v1.38 — Borrow objects from configuration into extension (CFE)
|
||||
# cfe-borrow v1.39 — Borrow objects from configuration into extension (CFE)
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
[CmdletBinding(PositionalBinding=$false)]
|
||||
param(
|
||||
@@ -1043,8 +1043,8 @@ function Borrow-Form {
|
||||
$childItemsXml = $childItemsXml.Remove($pm.Index, $pm.Length)
|
||||
}
|
||||
}
|
||||
# Strip StdPicture blocks (except Print)
|
||||
$childItemsXml = [regex]::Replace($childItemsXml, '(?s)\s*<Picture>\s*<xr:Ref>StdPicture\.(?!Print\b)\w+</xr:Ref>.*?</Picture>', '')
|
||||
# Стандартные картинки (StdPicture.*) не вырезаются: Конфигуратор оставляет их у кнопок, подменю
|
||||
# и страниц в обеих частях формы (эталоны 8.3.27, 26 элементов в 3 формах).
|
||||
|
||||
# Same Picture strip for AutoCommandBar
|
||||
if ($autoCmdXml) {
|
||||
@@ -1056,7 +1056,6 @@ function Borrow-Form {
|
||||
$autoCmdXml = $autoCmdXml.Remove($pm.Index, $pm.Length)
|
||||
}
|
||||
}
|
||||
$autoCmdXml = [regex]::Replace($autoCmdXml, '(?s)\s*<Picture>\s*<xr:Ref>StdPicture\.(?!Print\b)\w+</xr:Ref>.*?</Picture>', '')
|
||||
}
|
||||
|
||||
# Auto-borrow StyleItems referenced in ChildItems
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env python3
|
||||
# cfe-borrow v1.38 — Borrow objects from configuration into extension (CFE)
|
||||
# cfe-borrow v1.39 — Borrow objects from configuration into extension (CFE)
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
|
||||
import argparse
|
||||
@@ -2005,8 +2005,8 @@ def main():
|
||||
cp_name = pm.group(1)
|
||||
if cp_name not in borrowed_pic_set:
|
||||
child_items_xml = child_items_xml[:pm.start()] + child_items_xml[pm.end():]
|
||||
# Strip StdPicture blocks (except Print)
|
||||
child_items_xml = re.sub(r'\s*<Picture>\s*<xr:Ref>StdPicture\.(?!Print\b)\w+</xr:Ref>.*?</Picture>', '', child_items_xml, flags=re.DOTALL)
|
||||
# Стандартные картинки (StdPicture.*) не вырезаются: Конфигуратор оставляет их у кнопок, подменю
|
||||
# и страниц в обеих частях формы (эталоны 8.3.27, 26 элементов в 3 формах).
|
||||
|
||||
# Same Picture strip for AutoCommandBar
|
||||
if auto_cmd_xml:
|
||||
@@ -2015,7 +2015,6 @@ def main():
|
||||
cp_name = pm.group(1)
|
||||
if cp_name not in borrowed_pic_set:
|
||||
auto_cmd_xml = auto_cmd_xml[:pm.start()] + auto_cmd_xml[pm.end():]
|
||||
auto_cmd_xml = re.sub(r'\s*<Picture>\s*<xr:Ref>StdPicture\.(?!Print\b)\w+</xr:Ref>.*?</Picture>', '', auto_cmd_xml, flags=re.DOTALL)
|
||||
|
||||
# Auto-borrow StyleItems referenced in ChildItems
|
||||
referenced_styles = set()
|
||||
|
||||
Reference in New Issue
Block a user