This commit is contained in:
2026-09-09 18:06:21 +08:00
parent 161af68fe3
commit 45b9f9ed5d
79 changed files with 1167 additions and 1532 deletions
@@ -97,18 +97,16 @@ group and a <strong>leaf</strong>: chain structure belongs to the
<li>the <code>/machine-tool</code> route, a standalone surface pairing a chain-only canvas with a load button
and a GUI / XML view of what is loaded. Its fields are read-only, but the route is not: its Load
installs the picked chain file onto the project. It carries no Page-menu entry and is reached by
URL;</li>
<li>in the WPF client, a sub-window opened from the <a class="xref" href="../shell/main-panel.html">Main Panel</a>.</li>
URL.</li>
</ul>
<p>All three edit the one chain the project owns.</p>
<p>Both edit the one chain the project owns.</p>
<ul>
<li>Key Model:
<ul>
<li><a class="xref" href="../../api/Hi.Mech.IMachiningChain.html">IMachiningChain</a>
On the web the chain is addressed by an IndexService key handed to the
The chain is addressed by an IndexService key handed to the
<a class="xref" href="../widget/object-management-menu-button.html">Object Management Menu Button</a> and installed back onto
the project through the controller's Update. On the WPF client the same button is wired with a
TargetObjectGetter / TargetObjectSetter pair (see that page for the design pattern).</li>
the project through the controller's Update.</li>
</ul>
</li>
<li>Assistant Model:
@@ -184,43 +182,6 @@ fetched lazily on the first switch to XML and re-fetched after a load while XML
</ul>
</li>
</ul>
<h3 id="wpf-page">WPF Page</h3>
<ul>
<li>Head Line
<ul>
<li><a class="xref" href="../widget/object-management-menu-button.html">Object Management Menu Button</a>
<ul>
<li>file extension is <code>mt</code>; the load type is <a class="xref" href="../../api/Hi.Mech.IMachiningChain.html">IMachiningChain</a>.</li>
<li>The pointed Editor Panel is Management Panel — a ContentPresenter the button swaps between the
built GUI panel and an AvalonEdit text editor for XML mode.</li>
</ul>
</li>
<li>Title Label &ldquo;Machine Tool&rdquo;</li>
</ul>
</li>
<li>Management Panel
<ul>
<li>If the key model inherits <a class="xref" href="../../api/Hi.Common.INameNote.html">INameNote</a>:
<ul>
<li>Name Setting Line
<ul>
<li>Name Label</li>
<li>Name TextField — its TextChanged writes straight onto the chain.</li>
</ul>
</li>
<li>Note Setting Line
<ul>
<li>Note Label</li>
<li>Note TextField — multi-line, same write-through.</li>
</ul>
</li>
</ul>
</li>
<li>Type Line — italic <code>Type: {chain type}</code>.</li>
<li>Empty-state label when no chain is loaded.</li>
</ul>
</li>
</ul>
<h2 id="behavior">Behavior</h2>
<ul>
<li>Load / Paste / XML-Apply only swap the IndexService entry. The tree root then installs the result