deploy webservice static-file routing for docsite folder URLs, per-instance step-cache db, and constant-height panel title bars.

This commit is contained in:
2026-08-27 14:51:37 +08:00
parent 1fc510af5e
commit 2a98ae7556
1468 changed files with 182837 additions and 18888 deletions
@@ -96,7 +96,7 @@
<li><strong>Web Service Application</strong>: Service inherits from <a class="xref" href="../api/Hi.MachiningProcs.IProjectService.html">IProjectService</a></li>
</ul>
</li>
<li><strong>User Service</strong>: <a class="xref" href="../api/Hi.HiNcKits.UserService.html">UserService</a></li>
<li><strong>User Service</strong>: <a class="xref" href="../sample/Sample.Common.UserService.html">UserService</a></li>
</ul>
<h2 id="layout-structure">Layout Structure</h2>
<ul>
@@ -111,7 +111,7 @@
<li><code>Save As MenuItem</code></li>
</ul>
</li>
<li><code>Environment Menu Dropdown</code>
<li><code>Environment Menu Dropdown</code> (WPF application only — the web application has no such dropdown; see below)
<ul>
<li>Machine Tool MenuItem
Open <a href="mech/machining-chain-page.html">Machine Tool Page</a>
@@ -127,16 +127,26 @@ Open <a href="mech/workpiece-page.html">Workpiece Page</a></li>
</ul>
</li>
<li>Mission MenuItem
Open <a href="mission/index.html">Mission Page</a></li>
Open <a href="mission/index.html">Mission Page</a>
In the web application the Mission editor is a Player Control Tree branch; <code>/mission</code> redirects there.</li>
<li>Player MenuItem
Link to <a href="player/index.html">Player Panel</a>
(Not exist on WPF app.)</li>
<li>Player Belonged Tool Bars. See <a href="player/index.html">Player Panel</a>. Shows only if the Main Panel content is Player Panel.</li>
<li><code>Util Menu Dropdown</code> (web application only). See <a href="util/index.html">Util Pages</a>.
<ul>
<li>File Explorer MenuItem</li>
<li>Mechanism Builder MenuItem</li>
<li>Legacy-Controller MenuItem (below a separator)
Open <a href="controller/index.html">Controller Page</a></li>
</ul>
</li>
<li><a href="preference/index.html">Preference Menu Dropdown</a></li>
<li>Help MenuItem
<ul>
<li>HiAPI Version label
A label to show the HiNc library version.</li>
A label to show the HiNc library version.
The web application shows this as a version badge next to the brand logo, with no Help dropdown.</li>
</ul>
</li>
</ul>
@@ -145,7 +155,8 @@ A label to show the HiNc library version.</li>
Open Log Viewer to display application logs for the current day.
The Log Viewer provides real-time access to system logs with filtering and download capabilities.
It reads log files from the server's log directory and presents them in a formatted, searchable interface.
Users can refresh the log content or download the current day's log file for offline analysis.</li>
Users can refresh the log content or download the current day's log file for offline analysis.
In the web application this is an always-visible <code>Show Log</code> button on the menu bar's right side.</li>
<li>Central <code>Page Panel</code></li>
<li><a href="message-section-on-main-panel.html">Message Section on Main Panel</a></li>
</ul>
@@ -183,10 +194,10 @@ Users can refresh the log content or download the current day's log file for off
</tr>
</tbody>
</table>
<p>All operation results (success or exception) are displayed via <a class="xref" href="../api/Hi.Common.Messages.MultiTagMessageUtil.html">MultiTagMessageUtil</a>. When a project is loaded, the Player Panel's RenderingCanvas is set to isometric view using <a class="xref" href="../api/Hi.Disp.DispEngine.html#Hi_Disp_DispEngine_SetViewToIsometricView">SetViewToIsometricView()</a>.</p>
<p>All operation results (success or exception) are reported as <code>IMessage</code> notifications through the <a class="xref" href="../api/Hi.Common.Messages.MessageUtil.html">MessageUtil</a> helpers. When a project is loaded, the Player Panel's RenderingCanvas is set to isometric view using <a class="xref" href="../api/Hi.Disp.DispEngine.html#Hi_Disp_DispEngine_SetViewToIsometricView">SetViewToIsometricView()</a>.</p>
<div class="NOTE">
<h5>Note</h5>
<p>The implementation uses static functions of <a class="xref" href="../api/Hi.Common.Messages.MultiTagMessageUtil.html">MultiTagMessageUtil</a> for message handling. Async operations ensure smooth user experience during file I/O.</p>
<p>The implementation uses the <a class="xref" href="../api/Hi.Common.Messages.MessageUtil.html">MessageUtil</a> extension methods for message handling. Async operations ensure smooth user experience during file I/O.</p>
</div>
<h2 id="platform-specific-differences">Platform-Specific Differences</h2>
<h3 id="wpf-application">WPF Application</h3>
@@ -198,6 +209,7 @@ Users can refresh the log content or download the current day's log file for off
<ul>
<li>The Player Panel is the default panel displayed on the main page</li>
<li>The page URL and panel state are synchronized (bi-directional navigation)</li>
<li>There is no Environment dropdown. Machine Tool, Tool House, Fixture, Workpiece, Background / Coolant and Spindle Capability are all Player Control Tree roots or branches (their old routes redirect there), and Controller moved to <code>Util → Legacy-Controller</code>. The menu bar is therefore <code>Project ▾ | Player | Util ▾ | Preference ▾</code>.</li>
</ul>
<h2 id="source-code-locations">Source Code Locations</h2>
<p>See <a href="index.html">HiNC GUI Architecture</a> for git repository links.</p>
@@ -209,9 +221,9 @@ Users can refresh the log content or download the current day's log file for off
<ul>
<li><code>Environments/PreferenceController.cs</code></li>
<li><code>Environments/ProjectController.cs</code></li>
<li><code>wwwroot/app.js</code></li>
<li><code>wwwroot/index.html</code></li>
<li><code>wwwroot/preference/log-viewer.js</code></li>
<li><code>wwwroot-src/src/components/AppMenuBar.vue</code> — the whole navigation menu.</li>
<li><code>wwwroot-src/src/layouts/MainLayout.vue</code> — the shell that hosts the menu bar and the central page panel.</li>
<li><code>wwwroot-src/src/pages/LogViewerPage.vue</code> — the Log Viewer the <code>Show Log</code> button opens.</li>
</ul>
</article>