diff --git a/.claude/skills/form-add/scripts/form-add.ps1 b/.claude/skills/form-add/scripts/form-add.ps1 index 53a0527c..ad6ee781 100644 --- a/.claude/skills/form-add/scripts/form-add.ps1 +++ b/.claude/skills/form-add/scripts/form-add.ps1 @@ -254,8 +254,8 @@ function Emit-Companion { function Emit-CommonFlags { param($el, [string]$indent) - if ($el.hidden -eq $true) { X "$indentfalse" } - if ($el.disabled -eq $true) { X "$indentfalse" } + if ($el.visible -eq $false -or $el.hidden -eq $true) { X "$indentfalse" } + if ($el.enabled -eq $false -or $el.disabled -eq $true) { X "$indentfalse" } if ($el.readOnly -eq $true) { X "$indenttrue" } } diff --git a/.claude/skills/form-compile/SKILL.md b/.claude/skills/form-compile/SKILL.md index 90b9b59c..6791f941 100644 --- a/.claude/skills/form-compile/SKILL.md +++ b/.claude/skills/form-compile/SKILL.md @@ -58,8 +58,8 @@ powershell.exe -NoProfile -File .claude\skills\form-compile\scripts\form-compile - `"name"` — переопределить имя (по умолчанию из значения ключа типа) - `"path"` — DataPath (привязка к данным) - `"title"` — заголовок -- `"hidden": true` — Visible=false -- `"disabled": true` — Enabled=false +- `"visible": false` — Visible=false (скрыть элемент) +- `"enabled": false` — Enabled=false (сделать недоступным) - `"readOnly": true` — ReadOnly=true - `"on": ["OnChange", "StartChoice"]` — события с автоименованием обработчиков diff --git a/.claude/skills/form-compile/scripts/form-compile.ps1 b/.claude/skills/form-compile/scripts/form-compile.ps1 index bb5bb426..d7bc8f13 100644 --- a/.claude/skills/form-compile/scripts/form-compile.ps1 +++ b/.claude/skills/form-compile/scripts/form-compile.ps1 @@ -295,8 +295,8 @@ function Emit-Element { function Emit-CommonFlags { param($el, [string]$indent) - if ($el.hidden -eq $true) { X "$indentfalse" } - if ($el.disabled -eq $true) { X "$indentfalse" } + if ($el.visible -eq $false -or $el.hidden -eq $true) { X "$indentfalse" } + if ($el.enabled -eq $false -or $el.disabled -eq $true) { X "$indentfalse" } if ($el.readOnly -eq $true) { X "$indenttrue" } } diff --git a/.claude/skills/form-info/SKILL.md b/.claude/skills/form-info/SKILL.md index eed56b7e..8f61e1f5 100644 --- a/.claude/skills/form-info/SKILL.md +++ b/.claude/skills/form-info/SKILL.md @@ -71,7 +71,7 @@ Events: Elements: ├─ [Group:AH] ГруппаШапка │ ├─ [Input] Организация -> Объект.Организация {OnChange} - │ └─ [Input] Договор -> Объект.Договор [hidden] {StartChoice} + │ └─ [Input] Договор -> Объект.Договор [visible:false] {StartChoice} ├─ [Table] Товары -> Объект.Товары │ ├─ [Input] Номенклатура -> Объект.Товары.Номенклатура {OnChange} │ └─ [Input] Сумма -> Объект.Товары.Сумма [ro] @@ -105,8 +105,8 @@ Elements: | `[BtnGroup]` | ButtonGroup | **Флаги** (только при отклонении от умолчания): -- `[hidden]` — Visible=false -- `[disabled]` — Enabled=false +- `[visible:false]` — элемент скрыт (Visible=false) +- `[enabled:false]` — элемент недоступен (Enabled=false) - `[ro]` — ReadOnly=true - `,collapse` — Behavior=Collapsible (для групп) diff --git a/.claude/skills/form-info/scripts/form-info.ps1 b/.claude/skills/form-info/scripts/form-info.ps1 index 459a51f9..12f84674 100644 --- a/.claude/skills/form-info/scripts/form-info.ps1 +++ b/.claude/skills/form-info/scripts/form-info.ps1 @@ -149,9 +149,9 @@ function Get-EventsStr($node) { function Get-Flags($node) { $flags = @() $vis = $node.SelectSingleNode("d:Visible", $ns) - if ($vis -and $vis.InnerText -eq "false") { $flags += "hidden" } + if ($vis -and $vis.InnerText -eq "false") { $flags += "visible:false" } $en = $node.SelectSingleNode("d:Enabled", $ns) - if ($en -and $en.InnerText -eq "false") { $flags += "disabled" } + if ($en -and $en.InnerText -eq "false") { $flags += "enabled:false" } $ro = $node.SelectSingleNode("d:ReadOnly", $ns) if ($ro -and $ro.InnerText -eq "true") { $flags += "ro" } if ($flags.Count -eq 0) { return "" } diff --git a/docs/form-guide.md b/docs/form-guide.md index 46d02958..34f4ed38 100644 --- a/docs/form-guide.md +++ b/docs/form-guide.md @@ -122,8 +122,8 @@ Claude сделает grep по Form.xml и найдёт полный XML-бло ### Флаги Показываются только при отклонении от умолчания: -- `[hidden]` — элемент скрыт (Visible=false) -- `[disabled]` — элемент недоступен (Enabled=false) +- `[visible:false]` — элемент скрыт (Visible=false) +- `[enabled:false]` — элемент недоступен (Enabled=false) - `[ro]` — только чтение (ReadOnly=true) - `,collapse` — сворачиваемая группа (Behavior=Collapsible)