jack ca1a514f23 feat: Wafer Map integration
## Backend — Session & playback
- Add SessionController (QML-facing live/review controller) with
  loadedFile property for active-file highlight binding
- Add SessionModel, FramePlayer, and CsvRecorder for state machine,
  frame seek/step/speed, and CSV recording
- Add SensorEditor for per-sensor value overrides (replace + offset)
2026-06-11 11:55:34 -07:00
2026-06-11 11:55:34 -07:00
2026-06-04 13:25:11 -07:00

ISC QtQuick App

Small PySide6 + Qt Quick application scaffold for the ISenseCloud desktop UI shell.

Requirements

  • Python 3.10+ (tested with Python 3.14 in this workspace)
  • macOS, Linux, or Windows with GUI support

Setup

From the project root:

python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -e .            # install the `pygui` package (src/ layout) in editable mode

Run

source .venv/bin/activate
python -m pygui             # or run the `isc` console script

This launches the Qt window and loads the ISC QML module from src/pygui/ISC/Main.qml.

Project Structure

The application lives under a src/ layout as the pygui package:

  • src/pygui/__main__.py: PySide6 bootstrap; creates the Qt app and loads QML module ISC/Main. Entry point for python -m pygui.
  • src/pygui/backend/: Qt-facing models and controllers (device, settings, file browser, wafer parsing).
  • src/pygui/serialcomm/: serial port, device service, and data-parser layer.
  • src/pygui/ISC/: the ISC QML module (UI).
    • Main.qml: top-level window definition.
    • HomePage.qml: main UI layout (left action rail, workspace panel, footer tabs).
    • Theme.qml: shared theme constants and dark/light mode tokens.
    • qmldir: QML module registration.
  • tests/: pytest suite.
  • packaging/: PyInstaller spec (isc.spec) and app icons.

Window Configuration

Window dimensions and constraints are defined in src/pygui/ISC/Main.qml:

  • Default size: 1400 × 820 pixels
  • Minimum size: 1100 × 700 pixels
  • Title bar: "ISenseCloud"

To adjust the window, edit the Window block in src/pygui/ISC/Main.qml:

Window {
    width: 1400
    height: 820
    minimumWidth: 1100
    minimumHeight: 700
    visible: true
    title: qsTr("ISenseCloud")
}

Customization

  • Toggle dark/light mode in src/pygui/ISC/Theme.qml via isDarkMode.
  • Update sidebar and footer labels in src/pygui/ISC/HomePage.qml through sideActions and bottomTabs.

Troubleshooting

  • If the app does not start, verify the venv is active and dependencies are installed:

    source .venv/bin/activate
    pip install -r requirements.txt
    
  • If no window appears, ensure you are running in a desktop session with GUI access.

S
Description
No description provided
Readme 2 MiB
Languages
Python 58.4%
QML 41.5%