Modular Launcher

theatRICS starts with a small Launcher window rather than immediately opening the full analysis interface. This keeps startup fast and avoids loading heavy optional dependencies (such as tttrlib, cellpose, or AFMReader) until they are actually needed.


The launcher window

The launcher presents three large buttons:

Button

Opens

Correlation Methods

Image Simulation, RICS Export, RICS Fitting, SFCS, FCS Export, FCS Fitting

AFM

AFM height profile analysis

Imaging Methods

ICS, Vesicle Finder, FRAP

Each button opens a dedicated full-size analysis window containing only the tabs relevant to that category. All three windows include the Results & Logs tab for logging, session saving, and plot export.


Multiple windows

The launcher window remains open regardless of how many category windows are opened. You can open all three category windows simultaneously — each is fully independent with its own:

  • background worker processes

  • progress tracking

  • log output

  • session state


One instance per category

If you click a button while that category’s window is already open, the existing window is simply brought to the front rather than opening a duplicate.


Closing

Closing the launcher window closes all open category windows and cleans up any running background worker processes before shutting down the application.

Closing a category window closes only that window and stops its own background processes, leaving the launcher and other category windows open.


Lazy imports

Each category window only imports the Python modules it actually needs. For example:

  • Opening AFM does not import tttrlib, cellpose, or pylibCZIrw.

  • Opening Correlation Methods does not import cellpose or AFMReader.

  • Opening Imaging Methods does not import tttrlib or AFMReader.

This means the initial startup is fast even if heavy optional packages (e.g. numba, cellpose) are installed, since they are only loaded when the relevant category window is first opened.