Archived
deploy.
This commit is contained in:
@@ -99,9 +99,13 @@ command: at play time <a class="xref" href="../../../api/Hi.MachiningProcs.Sessi
|
||||
together with the project's own base directory to the local project service, and that is where a
|
||||
relative path acquires its root; the convention behind it is the
|
||||
<a class="xref" href="../../conventions/gui-file-path-assignment.html">Load Pattern</a>.</p>
|
||||
<p>The panel renders on the command's own node in the Mission branch of the Execution page's Control
|
||||
Tree, below the move / duplicate / delete control bar. This command has no title of its own, so the
|
||||
row and tree label read <code>Program File [path]</code>, the path being the detail the label brackets.</p>
|
||||
<p>The panel renders on the command's own node under the Mission root of the Execution page's Control
|
||||
Tree. The editor pane holds the editor and, while the command's tree checkbox is off, a one-line
|
||||
disabled hint above it — nothing structural: the command's move up / move down / duplicate / delete
|
||||
buttons and its drag handle sit on its tree row, and the Add Command <code>+</code> sits on the row of the
|
||||
list that holds it. This command has no editable Title field — unlike NC Code, Script and List —
|
||||
so its tree row label is composed from the path alone: <code>Program File [path]</code>, the path being the
|
||||
detail the label brackets.</p>
|
||||
<div class="NOTE">
|
||||
<h5>Note</h5>
|
||||
<p>The GUI labels this command “Program File”: it plays NC, CL (CLSF) and CSV files — the runner is
|
||||
@@ -178,11 +182,17 @@ browser to preserve. It is the backstop for a brand extension the NC group does
|
||||
Auto routes to the CL and CSV runners, and everything else falls through to brand NC.</p>
|
||||
<h2 id="multi-pick-fan-out">Multi-Pick Fan-Out</h2>
|
||||
<p>The dialog is multi-select, and this is the one command editor that grows the mission. The first
|
||||
picked file lands on this command. Each further pick becomes a <strong>new</strong> Program File command, added
|
||||
to the list this command sits in and moved into place directly after it, in pick order — the same
|
||||
list, so a command inside a nested list fans out inside that nested list. The panel then reports a
|
||||
structure change, which rebuilds the owning list's branch around the new rows and leaves the
|
||||
selection on this command.</p>
|
||||
picked file lands on this command. Each further pick becomes a <strong>new</strong> Program File command,
|
||||
inserted into the list this command sits in at the index directly after it, in pick order — one
|
||||
insert per pick, each at the next index, and the same list, so a command inside a nested list fans
|
||||
out inside that nested list. The panel then reports the insert range — the first new index and
|
||||
the count — and the command's slave panel scopes it to the owning list and names this command as
|
||||
the selection. The Control Tree host takes that insert on its structure-changed path, which shares
|
||||
two things with its own row ops — it holds the busy gate for the rebuild (a change arriving while
|
||||
another op is in flight is not rebuilt) and carries the index-based ids (the expansion set and the
|
||||
Add focus) over the new siblings — and not the third: the open panel's dirty gate, which every
|
||||
row op runs first, is not part of this path. It then rebuilds the owning list's branch around the
|
||||
new rows and leaves the selection on this command, whose own index is unchanged.</p>
|
||||
<h2 id="where-the-program-text-is-edited">Where the Program Text Is Edited</h2>
|
||||
<p>The command stores a path, and the panel does not edit the file. It assigns the path, picks the
|
||||
runner, reports what the server knows about the file, and previews its first 100 lines read-only.
|
||||
@@ -203,14 +213,27 @@ command stores.</li>
|
||||
from; an empty extension list means all files.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/missionItemTypes.ts</code> — maps the <code>ncfile</code> kind to this
|
||||
panel. A kind absent from that map is served by the generic field editor instead.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/MissionCommandSlavePanel.vue</code> — the command node's
|
||||
slave panel: mounts this editor on the entry path, and re-scopes the fan-out's structure change
|
||||
to the owning list, with the insert range and this command as the selection.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/ControlTreePanel.vue</code> — the tree rows: the drag handle
|
||||
and the move / duplicate / delete buttons on the command's row, and the Add Command <code>+</code> on the
|
||||
row of its list.</li>
|
||||
<li><code>wwwroot-src/src/components/controlTree/useControlTreeHost.ts</code> — takes the fan-out's insert on
|
||||
its structure-changed path: the busy gate held for the rebuild, the index-based ids carried over
|
||||
the new siblings (the two guarantees shared with the row ops; the dirty gate is not one of them),
|
||||
the rebuild scoped to the owning list, and the selection the payload names.</li>
|
||||
<li><code>wwwroot-src/src/api/mission.ts</code> — <code>loadNcFile</code>, <code>setNcFilePath</code>, <code>setNcFileNcKind</code>,
|
||||
<code>getNcFileInfo</code> and <code>previewNcFile</code>, plus the kind union and the file-info shape.</li>
|
||||
<code>getNcFileInfo</code> and <code>previewNcFile</code>, plus the kind union and the file-info shape; <code>addEntry</code>,
|
||||
which the fan-out calls with the insert index and which answers the new entry's path.</li>
|
||||
<li><code>wwwroot-src/src/i18n/en/mission.ts</code> — the panel's wording: the path hint, the Play As hint, the
|
||||
four filter labels, the banner's found and not-found lines, and the preview titles.</li>
|
||||
<li><code>Missions/MissionController.cs</code> — four endpoints serve this command: a PUT for the path, a PUT for
|
||||
the NC kind, and the two server-side reads behind the banner and the preview (both POSTs, both
|
||||
resolving a relative path against the project folder). The command-snapshot builder emits the file
|
||||
path and the NC kind for this kind of command.</li>
|
||||
resolving a relative path against the project folder). The fan-out's extra picks go through the
|
||||
list-entry POST, which lands the new entry at the requested insert index — clamped to the list,
|
||||
the tail when none is given — and answers its index and dotted path. The command-snapshot builder
|
||||
emits the file path and the NC kind for this kind of command.</li>
|
||||
</ul>
|
||||
<h3 id="hiapi-engine">HiAPI Engine</h3>
|
||||
<ul>
|
||||
|
||||
Reference in New Issue
Block a user