Archived
deploy.
This commit is contained in:
@@ -88,11 +88,11 @@
|
||||
<h1 id="finding-your-way">Finding Your Way</h1>
|
||||
|
||||
<p>The application is a handful of screens, and most of what a job configures lives inside a tree on
|
||||
two of them. The <strong>Page</strong> menu reaches six of those screens, and it is not all of them. Every node
|
||||
two of them. The <strong>Page</strong> menu reaches five of those screens, and it is not all of them. Every node
|
||||
of a tree has an address of its own, so a place in the application can be linked to rather than
|
||||
described.</p>
|
||||
<h2 id="the-screens">The screens</h2>
|
||||
<p>The <strong>Page</strong> dropdown on the menu bar carries six entries in three groups. The first group is the
|
||||
<p>The <strong>Page</strong> dropdown on the menu bar carries five entries in two groups. The first group is the
|
||||
job, in the order a job uses it:</p>
|
||||
<ul>
|
||||
<li><strong>Tool House</strong> — the tools, one editor per tool</li>
|
||||
@@ -106,27 +106,24 @@ run reports</li>
|
||||
<li><strong>File Explorer</strong> — browsing the files under the roots the service exposes</li>
|
||||
<li><strong>Mechanism Builder</strong> — authoring a kinematic chain</li>
|
||||
</ul>
|
||||
<p>Below a second separator, one more:</p>
|
||||
<ul>
|
||||
<li><strong>Legacy-Controller</strong> — the controller settings that the General Setup tree's Controller branch
|
||||
has no editor for. The page it opens is titled <em>Controller</em>.</li>
|
||||
</ul>
|
||||
<p>No entry is ever greyed out. All six are selectable with no project open; what they lead to is what
|
||||
<p>No entry is ever greyed out. All five are selectable with no project open; what they lead to is what
|
||||
changes.</p>
|
||||
<p>Three screens have no entry in this menu:</p>
|
||||
<ul>
|
||||
<li><strong>Machine Tool</strong>, at <code>/machine-tool</code>, reached by address only. It shows the machine chain beside a
|
||||
folder button whose tooltip reads <strong>Browse</strong> and a GUI / XML view switch, so it is more than a
|
||||
look at the chain — and it needs a project open.</li>
|
||||
folder button — whose tooltip reads <strong>Browse</strong> once a project is open, and <strong>Load a project first</strong>
|
||||
before that — and a GUI / XML view switch, so it is more than a look at the chain, and it needs a
|
||||
project open.</li>
|
||||
<li><strong>Log Viewer</strong>, reached from the <strong>Show Log</strong> button near the right-hand end of the menu bar. Its
|
||||
address is <code>/preference/log</code>.</li>
|
||||
<li>The sign-in page, which the service raises on its own when it wants one.</li>
|
||||
</ul>
|
||||
<h2 id="selecting-inside-a-tree">Selecting inside a tree</h2>
|
||||
<p>General Setup and Execution each carry a Control Tree in their left dock, under a header reading
|
||||
<strong>Control Tree</strong>, with the selected node's editor in the row beneath it. That editor row is titled
|
||||
with the path of the selection — <em>General Setup / Workpiece / Anchor / Geom To Fixture</em> — which is
|
||||
also how these pages name a place in prose.</p>
|
||||
<strong>Control Tree</strong>, with the selected node's editor in the row beneath it. That editor row names the
|
||||
path of the selection — <em>General Setup / Workpiece / Anchor / Geom To Fixture</em> — which is also how
|
||||
these pages name a place in prose; the header shows as much of it as the dock is wide, so a deep
|
||||
path arrives truncated.</p>
|
||||
<p>General Setup's tree has one root, <strong>General Setup</strong>, holding <strong>Machine Tool</strong>, <strong>Spindle
|
||||
Capability</strong>, <strong>Background</strong>, <strong>Coolant</strong>, <strong>Fixture</strong>, <strong>Workpiece</strong> and <strong>Controller</strong>, in that
|
||||
order. With a project open, a <strong>CSV Controller</strong> and a <strong>CL Controller</strong> node follow, each behind
|
||||
@@ -148,13 +145,14 @@ copying it copies the node, not just the page.</p>
|
||||
<li>To take a link from the tree instead, right-click a node's label. Every label is a real link to
|
||||
that node's address, so the browser's own copy-link and open-in-new-tab entries both apply to
|
||||
it.</li>
|
||||
<li>Ctrl-click, Cmd-click or Shift-click a label to open that node in a new tab. The current tab's
|
||||
selection stays where it is.</li>
|
||||
<li>Ctrl-click or Cmd-click a label to open that node in a new tab; Shift-click and middle-click open
|
||||
it wherever the browser opens any other link. The current tab's selection stays where it is.</li>
|
||||
<li>A plain left click selects the node in place, without navigating.</li>
|
||||
<li>Paste a <code>?tree=</code> value belonging to the other tree page and it redirects to the page that owns
|
||||
it, so a link does not have to name the right screen to reach the right node.</li>
|
||||
<li>Paste a <code>?tree=</code> value belonging to another page's tree and it redirects to the page that owns
|
||||
it — the other tree page, or Tool House — so a link does not have to name the right screen to
|
||||
reach the right node.</li>
|
||||
</ol>
|
||||
<p>Tool House has no <code>?tree=</code> at all — its address already names the selection, as
|
||||
<p>Tool House has no <code>?tree=</code> at all — its address names the selection down to the sub-tab, as
|
||||
<code>/tool-house/<tool>/<tab>/<sub-tab></code>, so <code>/tool-house/1/cutter/material</code> is a link to one tool's
|
||||
Material sub-tab.</p>
|
||||
<p>Arriving at a tree page with no <code>?tree=</code> still lands on a selected node — the last selection this
|
||||
@@ -164,8 +162,9 @@ as the tree is built, so the address bar is a whole link from then on.</p>
|
||||
<h5>Important</h5>
|
||||
<p>An address for a node its Preference checkbox is currently hiding — a <strong>CSV Controller</strong> or <strong>CL
|
||||
Controller</strong> node — is honoured only when the tree is built while that address is the current
|
||||
one, and it reveals nothing without a project open. In practice that means a full page load:
|
||||
pasting the link into a new tab, or reloading on it. Jumping to it from a screen that has already
|
||||
one, and it reveals nothing without a project open. In practice that means the tree's first build
|
||||
on that address: pasting the link into a new tab, reloading on it, or opening General Setup for the
|
||||
first time since the page or the project was loaded. Jumping to it from a screen that has already
|
||||
shown General Setup for the current project does not rebuild that tree, so the address is dropped
|
||||
in silence with the selection left where it was.</p>
|
||||
</div>
|
||||
@@ -176,7 +175,7 @@ describes the fields as column tags matched against the CSV header line: <strong
|
||||
prefix</strong> <code>MC.</code>, <strong>Cutter location prefix</strong> <code>CL.</code> and <strong>Tool id column</strong> <code>ToolId</code>.</p>
|
||||
<p><img src="finding-your-way-img/controller-csv-revealed.en.png" alt="The General Setup Control Tree with a CSV Controller node at the same indent as Controller, a sibling rather than a child of it, and the CSV column-tag editor below the tree"></p>
|
||||
<h2 id="the-addresses">The addresses</h2>
|
||||
<p>Nine addresses render a screen of their own. The bracketed segments are optional, so the bare
|
||||
<p>Eight addresses render a screen of their own. The bracketed segments are optional, so the bare
|
||||
address resolves too and the screen fills them in from its own state; File Explorer's trailing path
|
||||
carries as many segments as the browsed folder is deep.</p>
|
||||
<table>
|
||||
@@ -204,10 +203,6 @@ carries as many segments as the browsed folder is deep.</p>
|
||||
<td>Machine Tool</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>/controller/<tab></code></td>
|
||||
<td>Controller</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>/util/file-explorer/<root>/<path></code></td>
|
||||
<td>File Explorer</td>
|
||||
</tr>
|
||||
@@ -225,7 +220,7 @@ carries as many segments as the browsed folder is deep.</p>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><code>/</code> lands on Execution. Six further addresses render nothing of their own and redirect into a tree
|
||||
<p><code>/</code> lands on Execution. Seven further addresses render nothing of their own and redirect into a tree
|
||||
page's node instead:</p>
|
||||
<table>
|
||||
<thead>
|
||||
@@ -236,6 +231,10 @@ page's node instead:</p>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><code>/controller</code>, and anything below it</td>
|
||||
<td>General Setup, the Controller branch — the trailing path, the retired Legacy-Controller page's tab names included, is discarded</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>/spindle-capability/<tab></code></td>
|
||||
<td>General Setup, the Spindle Capability branch — on that tab's item when the segment names one, on the branch itself otherwise</td>
|
||||
</tr>
|
||||
|
||||
@@ -89,8 +89,9 @@
|
||||
|
||||
<p>This section covers the sign-in gate in front of the application and what is true on every screen
|
||||
behind it: the frame that stays put while the page area changes, the project the rest of the
|
||||
application is configured against, the ways one screen leads to another, and the surfaces that
|
||||
report what the service is doing. The task sections build on it rather than restating it. The pages
|
||||
application is configured against, the ways one screen leads to another, the settings that follow
|
||||
the application rather than the project, and the surfaces that report what the service is doing.
|
||||
The task sections build on it rather than restating it. The pages
|
||||
below are ordered as the application presents them: the gate, the frame, the project, the screens,
|
||||
the settings, the messages.</p>
|
||||
<p>For a first end-to-end run rather than a reference, start with
|
||||
@@ -102,7 +103,7 @@ the settings, the messages.</p>
|
||||
<li><a href="projects.html">Projects</a> — Creating, opening, saving and closing a project, and what Save As does and does not copy</li>
|
||||
<li><a href="finding-your-way.html">Finding Your Way</a> — The screens the Page menu reaches and the ones it does not, selecting inside a tree, and linking to a node</li>
|
||||
<li><a href="preferences.html">Preferences</a> — The settings the service keeps for everyone on it, and the ones the browser keeps for the device it is sitting at</li>
|
||||
<li><a href="messages-and-logs.html">Messages and Logs</a> — The footer's three channels, the four session message tabs and the service log, and which answers which question</li>
|
||||
<li><a href="messages-and-logs.html">Messages and Logs</a> — Where a message lands and how long it lasts: the toasts and the footer, the four session message tabs and the service log, and which answers which question</li>
|
||||
</ul>
|
||||
<h2 id="see-also">See Also</h2>
|
||||
<ul>
|
||||
|
||||
@@ -96,14 +96,16 @@ Picking the right surface is most of the difference between a specific question
|
||||
<ul>
|
||||
<li><strong>A toast</strong> — bottom right, for a few seconds, then gone. The only surface that interrupts, and
|
||||
the only one that keeps nothing itself.</li>
|
||||
<li><strong>The footer's latest line, and the recent list behind it</strong> — every toast that carried any text is
|
||||
copied here before it is shown, so this list is the toast's afterlife. Only a toast with neither
|
||||
message nor caption is skipped, and a small number of status lines are written straight here and
|
||||
never toast at all.</li>
|
||||
<li><strong>The footer's latest line, and the recent list behind it</strong> — a toast is copied here before it is
|
||||
shown, so this list is the toast's afterlife. Two kinds never arrive: a toast carrying neither
|
||||
message nor caption, and the notices Tool House, the <strong>Spindle Capability</strong> editor and the
|
||||
Controller panels raise, which are shown once and not kept. A small number of status lines go the
|
||||
other way — written straight here, and never toasted at all.</li>
|
||||
<li><strong>The footer's session strip</strong> — the middle of the bar, drawn once a run has produced something
|
||||
and empty until then.</li>
|
||||
<li><strong>The footer's background zone</strong> — the right end, drawn only while a project file operation is in
|
||||
flight, naming the operation and the path it is working on.</li>
|
||||
<li><strong>The footer's background zone</strong> — the right end, drawn only while one of the <strong>Project</strong> menu's
|
||||
operations is in flight — <strong>Close Project</strong> included — naming the operation and the path it is
|
||||
working on.</li>
|
||||
<li><strong>The Session Messages panel</strong> — on the Execution page, four lists kept by the service.</li>
|
||||
<li><strong>The Log Viewer</strong> — the file the service itself writes for the current day.</li>
|
||||
</ul>
|
||||
@@ -111,12 +113,20 @@ flight, naming the operation and the path it is working on.</li>
|
||||
four lists, and the panel is where it stays.</p>
|
||||
<h2 id="messages-a-project-load-raises">Messages a project load raises</h2>
|
||||
<p>Opening or re-reading a project can report holes in it — a referenced STL missing from disk, or a
|
||||
mesh-geometry <code>.wct</code> file a raw geometry names but that is not there. <strong>None of these fail the load.</strong>
|
||||
The project opens, the body that needed the missing file simply comes up without its geometry, and
|
||||
the action still reports success. The message is the only thing that says otherwise.</p>
|
||||
<p>These messages then take a path of their own, and it has a consequence worth knowing before you rely
|
||||
on it. A project file operation runs outside any session, so the panel's four lists — which belong to
|
||||
the service, and are where everything a <em>run</em> reports stays — never see them. Instead the first five
|
||||
runner configuration the file names that would not load, leaving the project on a default one.
|
||||
<strong>None of these fail the load.</strong> The project opens, the body that needed the missing file simply
|
||||
comes up without its geometry, and the action still reports success. The message is the only thing
|
||||
that says otherwise.</p>
|
||||
<p>Two neighbouring cases go elsewhere. A mesh-geometry <code>.wct</code> file a raw geometry names but that is not
|
||||
there raises nothing here at all, because the load never opens it; the first word about it comes when
|
||||
the meshed geometry is next needed, and that message belongs to the run, so it lands in the Session
|
||||
Messages panel like any other. A side file the project names as a reference — the machine chain, the
|
||||
spindle capability, a material, a cutting parameter set — is the opposite case: a missing one fails
|
||||
the load outright, and that arrives as an error rather than as one of the messages described here.
|
||||
See <a href="projects.html">Projects</a>.</p>
|
||||
<p>These messages then take a path of their own, and it has a consequence worth knowing before that
|
||||
path is relied on. A project file operation runs outside any session, so the panel's four lists —
|
||||
which belong to the service, and are where everything a <em>run</em> reports stays — never see them. Instead the first five
|
||||
errors and warnings are toasted, anything past that goes straight to the footer's recent list, and
|
||||
one more toast says how many did not get their own. Anything milder than a warning is not surfaced in
|
||||
the window at all.</p>
|
||||
@@ -126,15 +136,15 @@ read <a href="#the-service-log">the service log</a>, which has them either way.
|
||||
not.</p>
|
||||
<h2 id="the-footer">The footer</h2>
|
||||
<p>The left region is this browser's own record and nothing else's. The list behind the latest line is
|
||||
newest first, capped at a hundred entries, emptied by its <strong>Clear</strong> button and by a reload, and
|
||||
written down nowhere — nothing about it survives closing the tab. Each entry keeps the wording it
|
||||
newest first, capped at a hundred entries, emptied by its <strong>Clear</strong> button — which takes the latest
|
||||
line back to <em>Ready</em> with it — and by a reload, and written down nowhere — nothing about it survives closing the tab. Each entry keeps the wording it
|
||||
was raised in, so switching the language leaves the list as a mixture while the panel's lists
|
||||
re-render at once. The frame page describes the regions themselves: see
|
||||
<a href="the-app-window.html">The Application Window</a>.</p>
|
||||
<p><strong>Nothing marks the list as having something new in it.</strong> The button carries no badge and no dot,
|
||||
deliberately, because a toast has already drawn attention once. The consequence is the failure this
|
||||
page exists to prevent: a message raised while another screen was open, or while the window was
|
||||
behind something else, is invisible until that menu is opened by hand. Opening it after an action
|
||||
page exists to prevent: a message that never toasted at all, or one whose few seconds expired while
|
||||
the window was behind something else, is invisible until that menu is opened by hand. Opening it after an action
|
||||
that seemed to do nothing is the cheapest check available.</p>
|
||||
<p>The middle strip is the other way round — the service pushes it, so every connected browser sees the
|
||||
same run activity, and each browser keeps its own short ring of the last entries behind it. What it
|
||||
@@ -149,7 +159,7 @@ appear on it at all. The lists on the service drop nothing.</p>
|
||||
header row reads <strong>Session Messages</strong> and stays visible when the panel is collapsed, so a grey strip
|
||||
with that name on it is the panel, shut.</p>
|
||||
<p><strong>The whole column can be switched off, and nothing on the page says so.</strong> The column quick-toggles
|
||||
in the middle of the menu bar include one whose tooltip reads <em>Toggle the Execution canvas &
|
||||
at the right-hand end of the menu bar include one whose tooltip reads <em>Toggle the Execution canvas &
|
||||
messages column</em>; with it off, neither the panel nor its header row is drawn, and the page simply
|
||||
looks like it has fewer parts. That choice is the browser's and survives a reload. The expanded or
|
||||
collapsed state of the panel itself is not: it is kept by the service, and is therefore the same for
|
||||
@@ -269,14 +279,14 @@ application.</p>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>what was reported while another screen was open</td>
|
||||
<td>the recent list behind it — nothing else will mention it</td>
|
||||
<td>the recent list behind it — the only copy the window keeps</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>where a run has got to</td>
|
||||
<td>the footer's session strip</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>whether a project file operation is still running</td>
|
||||
<td>whether one of the Project menu's operations is still running</td>
|
||||
<td>the footer's background zone</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -297,7 +307,7 @@ application.</p>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>why a project opened with pieces missing</td>
|
||||
<td>the toasts it raised, or the Log Viewer — <strong>not</strong> the Session Messages panel</td>
|
||||
<td>the footer's recent list, or the Log Viewer — <strong>not</strong> the Session Messages panel</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>what the service recorded, shown or not</td>
|
||||
|
||||
@@ -89,8 +89,9 @@
|
||||
|
||||
<p>The settings that follow the application rather than the project are kept on two sides: the service,
|
||||
where one value serves every browser signed in to it, and the browser, for the device it is sitting
|
||||
at. The <strong>Preference</strong> menu is where most of them are set, and the rest are reached from the panel
|
||||
each one belongs to. Which side keeps a setting is the thing worth knowing about it, because that is
|
||||
at. The <strong>Preference</strong> menu carries four of them — the language, the physics switch and the two
|
||||
controller checkboxes — and the rest are reached from the panel each one belongs to. Which side
|
||||
keeps a setting is the thing worth knowing about it, because that is
|
||||
what decides who else sees the change.</p>
|
||||
<h2 id="where-it-is">Where it is</h2>
|
||||
<p>The <strong>Preference</strong> dropdown on the menu bar, after <strong>Project</strong> and <strong>Page</strong>. It carries no OK and no
|
||||
@@ -126,9 +127,11 @@ for a selected step, which of that page's charts, its <strong>Session Messages</
|
||||
Properties</strong> panel are switched on, the General Setup canvas's display options including the work
|
||||
coordinate its marker draws, and the graphic cache budget.</p>
|
||||
<p><strong>The browser keeps the arrangement of the screen in front of it.</strong> That is the two tree pages'
|
||||
layout — which columns are shown, how wide the docks are, which tree nodes are left unfolded and
|
||||
which node each tree page reopens on — together with the two controller checkboxes above, and the
|
||||
File Explorer's editor pane, its split and its sort order. Three of the Execution page's panels sit
|
||||
layout — which columns are shown, how wide the docks are and how the right-hand dock is divided
|
||||
between its two columns, how tall the editor row under each tree is, which tree nodes are left
|
||||
unfolded, which node each tree page reopens on, the heights dragged between stacked panels, the two
|
||||
shared chart legend widths and the shared strip-chart x-axis mode — together with the two controller
|
||||
checkboxes above, and the File Explorer's editor pane, its split, its auto-save and its sort order. Three of the Execution page's panels sit
|
||||
on this side rather than with that page's others: the <strong>3D Rendering Canvas</strong>, <strong>CWE</strong> and
|
||||
<strong>Sentence Syntax</strong>. The browser also holds a copy of the language, used only to paint the first
|
||||
frame before the service can be asked; the service's value wins every disagreement, so a language
|
||||
@@ -139,15 +142,17 @@ reaches the service's preference file only when some later preference save write
|
||||
service stopped before any such save comes back on the budget it had before.</p>
|
||||
<h2 id="making-a-physics-change-take">Making a physics change take</h2>
|
||||
<p><strong>Show Physics Options</strong> is read while a tree or a tab row is being built, not while one is on screen,
|
||||
so the four routes below are what the tree and the tab row need; the two canvases pick the change up
|
||||
on their own next draw instead. Ticking it therefore changes nothing already built: the tree does
|
||||
not grow the nodes it gates, and the Tool House tab row does not grow the tab, until something
|
||||
builds them again. Folding a branch shut and opening it again is not a rebuild.</p>
|
||||
so the four routes below are what the tree and the tab row need; the Execution page's <strong>CWE</strong> canvas
|
||||
re-reads it the next time the selected step changes, while the Tool House canvas fixes the cutter's
|
||||
shape when its rendering connection is made and holds it until that connection is made again.
|
||||
Ticking it therefore changes nothing already built: the tree does not grow the nodes it gates, and
|
||||
the Tool House cutter's section-tab row does not grow the tab, until something builds them again.
|
||||
Folding a branch shut and opening it again is not a rebuild.</p>
|
||||
<p>Four things do rebuild one:</p>
|
||||
<ol>
|
||||
<li>Reload the browser. That rebuilds the whole application, every tree included.</li>
|
||||
<li>The project under the session changes — <strong>New</strong>, <strong>Load</strong>, <strong>Close Project</strong>, or a <strong>Save As</strong> to a
|
||||
location other than the one already open. Every screen the session has built is discarded and
|
||||
<li>The project under the session changes — <strong>New</strong>, a <strong>Load</strong> that picks a different project,
|
||||
<strong>Close Project</strong>, or a <strong>Save As</strong> to a location other than the one already open. Every screen the session has built is discarded and
|
||||
built again, and <strong>ReLoad</strong> does the same on the path already open.</li>
|
||||
<li>On Tool House, select a different tool in the left column and come back. The tab row is built for
|
||||
whichever tool is being shown, so moving between two tools rebuilds it twice.</li>
|
||||
|
||||
@@ -156,12 +156,17 @@ project file's own folder. Opening the project file in a text editor shows those
|
||||
than what they point at.</p>
|
||||
<div class="IMPORTANT">
|
||||
<h5>Important</h5>
|
||||
<p><strong>A reference that points at nothing does not stop the project opening.</strong> Load and ReLoad read what
|
||||
they can and report what they could not — a missing STL, or a mesh-geometry <code>.wct</code> file a raw
|
||||
geometry names — and the project comes up with that body simply having no geometry, the action
|
||||
still reporting success. The message is the only thing that says otherwise, and it is not kept
|
||||
where a run's messages are kept: see
|
||||
<a href="messages-and-logs.html#messages-a-project-load-raises">Messages a project load raises</a>.</p>
|
||||
<p><strong>A raw geometry that points at nothing does not stop the project opening; a missing side file
|
||||
does.</strong> Load and ReLoad read what they can and report what they could not — a missing STL, say —
|
||||
and the project comes up with that body simply having no geometry, the action still reporting
|
||||
success. A mesh-geometry <code>.wct</code> file a raw geometry names is quieter still: the load neither opens
|
||||
it nor mentions it, and the first word about it is a warning raised when the meshed geometry is
|
||||
first needed. A side file named as a reference is the other case altogether: when the machine
|
||||
chain, the spindle capability, a material or a cutting parameter set is not where the project file
|
||||
says it is, the load fails outright — no project opens, and the failure is reported as an error
|
||||
rather than as a diagnostic beside a successful load. Where a load does succeed with a hole, the
|
||||
message is the only thing that says otherwise, and it is not kept where a run's messages are kept:
|
||||
see <a href="messages-and-logs.html#messages-a-project-load-raises">Messages a project load raises</a>.</p>
|
||||
</div>
|
||||
<p>A project is therefore a folder at least as much as a file. Copying one to another machine, archiving
|
||||
one, or handing one to somebody else means taking the folder.</p>
|
||||
@@ -176,10 +181,14 @@ editor, waiting on a file to be given to it.</p>
|
||||
<div class="WARNING">
|
||||
<h5>Warning</h5>
|
||||
<p><strong>A Save As into a new folder can produce a project that finds none of its programs.</strong> Save As
|
||||
writes out every side file the project file holds as a reference, into the new folder and at the
|
||||
same relative place, and nothing it does not. What it leaves behind is whatever the project names
|
||||
as a plain path instead of as a reference — and the NC programs a mission plays are named that
|
||||
way. Nothing rewrites those paths either, so the saved project still asks for <code>NC/…</code>, now
|
||||
writes out the side files the project file references — the machine chain, the spindle capability,
|
||||
the materials, the cutting parameters, and the STL meshes the equipment and the workpiece name —
|
||||
into the new folder and at the same relative place. Two things travel as a path with nothing
|
||||
behind them: a mesh-geometry <code>.wct</code>, which is never written out at all, and an STL that was
|
||||
already missing when the project opened, which is deliberately left missing rather than replaced
|
||||
by an empty file. Neither are the NC programs a mission plays: the project records
|
||||
each as a path, and nothing on the save side copies the file. Nothing rewrites those paths either,
|
||||
so the saved project still asks for <code>NC/…</code>, now
|
||||
underneath the new folder, where nothing has put it. The programs have to be brought across by
|
||||
hand, or the Save As aimed at a folder that already holds them.</p>
|
||||
</div>
|
||||
@@ -205,8 +214,9 @@ did not change — carries on with what it was showing.</p>
|
||||
performed the Save As is told, in the reply to its own request. Every other browser goes on
|
||||
displaying the old path in its <strong>Project</strong> dropdown, although the service is working with the new one
|
||||
underneath — so a Save from any of them writes to the new path. A stale row corrects itself the next
|
||||
time the service reports its state to that browser: a reload, another project change, or a run being
|
||||
started, paused, finished or reset from any browser.</p>
|
||||
time the service reports its state to that browser: a reload, the browser's status connection
|
||||
dropping and coming back, another project change, or a run being started, paused, finished or reset
|
||||
from any browser.</p>
|
||||
<p>New, Load, ReLoad, Save and Save As take a turn each. A second one asked for while the first is still
|
||||
running is refused rather than queued, and the refusal arrives as a warning reading <em>Another project
|
||||
operation is in progress. Please try again.</em> Close Project takes no part in that turn-taking: it
|
||||
|
||||
@@ -105,8 +105,9 @@ change a password or recover one from inside the application. All three are edit
|
||||
configuration, made by whoever runs the service, and they take effect at its next restart.</p>
|
||||
<p>What the gate closes is the service's own surface: the requests each screen makes for data, and the
|
||||
live channels that keep those screens current. It does not close the page. The application shell,
|
||||
the brand image and the sign-in card itself are served before authorization is consulted, which is
|
||||
what lets the card be drawn for a browser that holds no session.</p>
|
||||
the brand image and the sign-in card itself all reach a browser that holds no session: the brand
|
||||
image and the built bundle the card is drawn from are plain files, served before authorization is
|
||||
consulted, and the shell page is exempt from the gate outright.</p>
|
||||
<h2 id="signing-in-1">Signing in</h2>
|
||||
<p>The card asks for one pair of credentials, under the prompt <em>Please sign in to continue</em>.</p>
|
||||
<ol>
|
||||
|
||||
@@ -92,7 +92,7 @@ along the bottom. The frame is built once and stays mounted for the whole sessio
|
||||
described here is present on every page. A project change is the one event that reaches into it and
|
||||
rebuilds what the middle holds.</p>
|
||||
<p>The whole frame at <code>/execution</code>, with the demo project open. Only the column quick-toggles and the
|
||||
connection badge, in the middle of the bar, are there because of the page underneath them — the logo,
|
||||
connection badge, in the right-hand group, are there because of the page underneath them — the logo,
|
||||
the three dropdowns, the page title and <strong>Show Log</strong> sit on the bar whatever page is open, and the
|
||||
sign-out button turns on whether a sign-in is asked for rather than on the page. The strip along the
|
||||
very bottom is the footer, reading <strong>Ready</strong> because nothing has been reported yet.</p>
|
||||
@@ -111,12 +111,12 @@ column), three on General Setup. Each glyph is a small map of the page with its
|
||||
and each tooltip names the column it toggles. Tool House lays itself out with draggable splitters
|
||||
and gets no buttons here.</li>
|
||||
<li><strong>The connection badge</strong> — the Execution page only. See below.</li>
|
||||
<li><strong>The current page's title</strong> — the destination's own title, which is where two controls read
|
||||
differently from where they land: the Page menu's <strong>Legacy-Controller</strong> entry opens the page titled
|
||||
<strong>Controller</strong>, and <strong>Show Log</strong> opens the page titled <strong>Log Viewer</strong>.</li>
|
||||
<li><strong>The current page's title</strong> — the destination's own title, which is where one control reads
|
||||
differently from where it lands: <strong>Show Log</strong> opens the page titled <strong>Log Viewer</strong>.</li>
|
||||
<li><strong>Show Log</strong> — present on every page.</li>
|
||||
<li><strong>The sign-out button</strong> — labelled with the signed-in user name, or <strong>Logout</strong> when the service has
|
||||
no name for it. It is there only while the service asks for a sign-in.</li>
|
||||
no name for it. It is there only while the service asks for a sign-in and this browser has passed
|
||||
it.</li>
|
||||
</ul>
|
||||
<h2 id="the-page-area">The page area</h2>
|
||||
<p>Everything between the bars is the current page, and every page reached during a session stays built:
|
||||
@@ -125,16 +125,22 @@ half-finished and an established rendering connection exactly as they were.</p>
|
||||
<p>Two things it does not carry over. Nothing restores a scroll position inside a panel: coming back to a
|
||||
page finds its panels scrolled to where a fresh mount would put them. And a browser reload is not a
|
||||
navigation — it rebuilds the whole application and empties the cache; what survives it is what lives
|
||||
outside the page area, namely the address (a <code>?tree=</code> selection in it included) and the layout the
|
||||
browser keeps for itself.</p>
|
||||
outside the page area: the address (a <code>?tree=</code> selection in it included), the layout the browser
|
||||
keeps for itself, and the preferences the service holds — the language, <strong>Show Physics Options</strong>, and
|
||||
which of the Execution page's charts, its <strong>Session Messages</strong> panel and its <strong>Step Properties</strong>
|
||||
panel are switched on.</p>
|
||||
<p>The column buttons are remembered per page — the two tree pages each keep their own choices — while
|
||||
the dock widths and the list of unfolded tree nodes are single settings both of them share, so
|
||||
widening the dock on Execution widens it on General Setup too.</p>
|
||||
<p><strong>F5 to F8 belong to the Execution page.</strong> They drive its transport — F5 starts or resumes, F6
|
||||
pauses, F7 runs one NC line, F8 runs one machining step — and they are bound only while that page is
|
||||
the one on screen, so on every other screen F5 is the browser's own reload. A key whose button is not
|
||||
available at that moment, or that is pressed with the focus in a text field, is handed back to the
|
||||
browser instead. That matters most for F5: while a run is in progress the start button is
|
||||
unavailable, so the key reloads the page and takes the session with it.</p>
|
||||
unavailable, so the key reloads the page and the screens the session had built go with it.</p>
|
||||
<h2 id="what-a-project-change-does">What a project change does</h2>
|
||||
<p><strong>New</strong>, <strong>Load</strong>, <strong>ReLoad</strong> and <strong>Close Project</strong> discard every page the session has built and
|
||||
<p><strong>New</strong>, a <strong>Load</strong> that picks a different project, <strong>ReLoad</strong>, a <strong>Save As</strong> to a location other
|
||||
than the one already open, and <strong>Close Project</strong> discard every page the session has built and
|
||||
rebuild it against whatever the project is afterwards — nothing at all, after <strong>Close Project</strong>.
|
||||
That is what stops a screen showing values from a project that is not open any more, and it is also
|
||||
why in-page state that was never saved does not survive one.</p>
|
||||
@@ -158,16 +164,18 @@ the full text with whatever caption came with it. The icon in front decodes the
|
||||
information mark for a plain status line, a green tick for a success, an amber triangle for a warning,
|
||||
a red mark for a failure. The clock button beside it opens <strong>Recent messages</strong> — newest first, capped
|
||||
at a hundred, each row repeating its severity as a coloured strip down the left edge and carrying the
|
||||
time it arrived. That list belongs to this browser and this session: <strong>Clear</strong> empties it, a reload
|
||||
empties it, and it is written down nowhere.</p>
|
||||
<p><strong>Middle — the session strip.</strong> It is drawn only while a run has produced something, and the space is
|
||||
simply empty the rest of the time. A glyph leads each line — a locator mark on a cursor tick, the
|
||||
time it arrived. That list belongs to this browser and this session: <strong>Clear</strong> empties it and returns
|
||||
the line in front of it to <strong>Ready</strong>, a reload empties it, and it is written down nowhere.</p>
|
||||
<p><strong>Middle — the session strip.</strong> It is drawn only while a run has produced something, it is emptied by
|
||||
a project change, and the space is simply empty the rest of the time. A glyph leads each line — a locator mark on a cursor tick, the
|
||||
message's own severity mark otherwise — and an anchor follows it in a monospaced prefix wherever the
|
||||
entry carries one: a cursor line carries <code>Sn</code> and the sentence index it sits on, a message line the
|
||||
anchor the message itself supplies. Hovering opens the recent activity behind it; clicking pins that
|
||||
list open.</p>
|
||||
<p><strong>Right — the background zone.</strong> It appears only while a project file operation is in flight, names
|
||||
the operation and the path it is working on, and vanishes when the operation ends.</p>
|
||||
anchor the message itself supplies. Hovering opens the recent activity behind it — newest first,
|
||||
capped at thirty, with a run of consecutive cursor ticks collapsed into its latest; clicking pins
|
||||
that list open.</p>
|
||||
<p><strong>Right — the background zone.</strong> It appears only while one of the <strong>Project</strong> menu's operations is in
|
||||
flight — <strong>Close Project</strong> included — names the operation and the path it is working on, and vanishes
|
||||
when the operation ends.</p>
|
||||
<p>Switching the language re-resolves the interface at once and without navigating: the menus, the page
|
||||
title in the bar and the browser tab title all change. The two message regions do not follow. Each
|
||||
line in the recent list and in the session strip keeps the language it was raised in, so a footer read
|
||||
@@ -188,9 +196,6 @@ healthy rather than every connection that exists.</p>
|
||||
explain and none appears. The tooltip lists one row per connection, <code>Rendering</code>, <code>Shell</code>, <code>NcDiag</code> and
|
||||
the rest, and those names are identifiers rather than interface text: in a translated session only the
|
||||
state beside each name changes language.</p>
|
||||
<p>The buttons that hide those panels' columns are remembered per page. The two tree pages each keep
|
||||
their own column choices, while the dock widths and the list of unfolded tree nodes are single
|
||||
settings both of them share — widening the dock on Execution widens it on General Setup too.</p>
|
||||
<h2 id="see-also">See Also</h2>
|
||||
<ul>
|
||||
<li><a href="index.html">Basics</a> — the rest of what is true on every screen</li>
|
||||
|
||||
Reference in New Issue
Block a user