ANNOUNCE: Availability of a character-mode emulation of the wxPython API for local and remote embedded systems

ANNOUNCE: Availability of the initial (pre-alpha-stage) release of the TeamSTARS “tsWxGTUI_PyVx” Toolkit. It is designed to be a foundation for developing, operating and troubleshooting those Python Curses based application programs embedded in local and remote 32-/64-bit computer systems used to monitor and control mission critical equipment.

It features Python 2x & Python 3x based Command Line Interfaces (CLI) and “Curses”-based “wxPython”-style, Graphical-Text User Interfaces (GUI). With it, you get that cross-platform, pixel-mode “ wxPython" feeling on character-mode 8-/16-color (xterm-family) & non-color (vt100-family) terminals and terminal emulators.

It supports:

  1. Launching from command line interface mode
  2. Frames, Dialogs, Scrolled Windows
  3. Panels
  4. Buttons, CheckBoxes, Radio Boxes/Buttons
  5. Text Entry and Password Entry (still under development)
  6. Splash Screen display constructed or re-used during launch
  7. 68-color palette (mapped into 8-/16-color Curses palette)
  8. Logging to Screen and Files
  9. Event Handling (not yet general purpose)
  10. Task Bar (not yet capable of changing focus)
  11. Position and dimensions accepted in Pixel (default) or Character (option) cell units.

Keyboard and mouse input works with Curses-compatible "Terminal” applications on 32-/64-bit Linux, “iTerm2” on Mac OS X and “Terminal” on Unix. It also works with nCurses-compatible “Terminal”, “XTerm” and "UXTerm” applications on 32-/64-bit Linux and with the Cygwin plugin for Microsoft Windows (using its “Mintty” Terminal application). It does not yet support keyboard Shortcut/Hotkey input.

Though its still a work in progress (pre-alpha), I"ve released all source code, documentation and draft engineering notebook on github

(https://github.com/rigordo959/tsWxGTUI_PyVx_Repository) hoping to get feedback on the features, performance and priorities of features to

implement next.

The repository includes Python 2x and 3x versions of:

  1. Python sub-version-specific installable Site-Packages (e.g. using “python2.6.8 setup.py install” or "python2.7.9 setup.py install” in "./tsWxGTUI_PyVx_Repository/SourceDistributions/Site-Packages/Python-2x”) which augments the standard Python Global Module Index
  2. Python sub-version-independant Developer-Sandboxes (e.g. run test and tool applications in “./tsWxGTUI_PyVx_Repository/SourceDistributions/Developer-Sandboxes/Python-3x/tsWxGTUI_Py3x”) which facilitates experimentation without corrupting installed Site-Packages.

I’ve included applications and instructions that demonstrate the Toolkit’s local and remote usage, functions and coding techniques.

See “./tsWxGTUI_PyVx_Repository/Documents/Demo.txt” for details.

Unlike host operating systems, which provide native GUI services, the Toolkit attempts to emulate the wxPython 68-color palette, and association of mouse input with wxPython triggering objects (such as scroll bar buttons and thumb buttons/gauges). It seems unlikely that the toolkit could be easily

re-implemented in c++ and integrated in the wxWidgets build system.

Richard S. Gordon