Table of Contents

Main Panel

  • Key Model
    • WPF Single-User Desktop Application: Self-hosted LocalProjectService
    • Web Page Application: Service inherits from <xref:Hi.MachiningProcs.IPathedMachiningProjectHost>
  • Other Model: AppService

Main Panel Layout

  • Top Navigation Menu
    • Project Menu Dropdown
      • Project Path Text Field
      • New MenuItem
      • Load MenuItem
      • Save MenuItem
      • Save As MenuItem
    • Environment Menu Dropdown
    • Mission MenuItem Open Mission Page
    • Player MenuItem Link to Player Panel (Not exist on WPF app.)
    • Player Belonged Tool Bars. See Player Panel. Shows only if the Main Panel content is Player Panel.
    • Preference Menu Dropdown
      • Log MenuItem 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.
  • Central Page Panel
  • Message Section on Main Panel

Behavior of Navigation Menu/Project

Project Path Text Field Shows the Project Path if the project is assinged.

Tip

Project Path Text Field should not be button style. It should be a pure text field that can be selected and copied.

The Project Menu Managing MachiningProject.

To New (create), Save and Save As the MachiningProject, See DemoBuildGeomOnlyMachiningProject for the example.

To Load MachiningProject, See DemoUseMachiningProject for the example.

Show message for the actions result (successed or has exception) by MessageKit.

Tip

Recommmand using static function of MessageKit to do the job. Read document of MessageKit to ensure the proper usage.

On project loaded (Navigation Menu/Project/Load MenuItem) , set the Player.Panel.RenderingCanvas.DispEngine to SetViewToIsometricView().

Tip

Using async to comfort the process

WPF Application Specification

Limit the GUI that only single Page/Window existed in the application for the sub window from the Main Panel, include Mission, Workpiece and Fixture.

Don't create the Player MenuItem if the target application is WPF Application. Since the Main panel is the Player Panel and the panel is fixed to the main panel.

Web-Page Application Specification

Apply Player Panel as the default panel.

Application Specification and Source Code Path

See this page for git repository.

WPF Application Source Code Path

  • MainWindow

Web Page Application Source Code Path

  • Environments/PreferenceController.cs
  • Environments/ProjectController.cs
  • wwwroot/app.js
  • wwwroot/index.html
  • wwwroot/preference/log-viewer.js

Web Page Application Specification

The page and URL are bi-directional.