[GRASS-git] [OSGeo/grass] a5386c: gui: Refactor Copy button to use Tools API, rememb...

Mykhailo Radchenko noreply at github.com
Fri May 22 19:51:21 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/OSGeo/grass
  Commit: a5386caccbcdf881ebdcafc0369ad52b5a2059ec
      https://github.com/OSGeo/grass/commit/a5386caccbcdf881ebdcafc0369ad52b5a2059ec
  Author: Mykhailo Radchenko <91974475+polucifier at users.noreply.github.com>
  Date:   2026-05-22 (Fri, 22 May 2026)

  Changed paths:
    M gui/wxpython/core/settings.py
    M gui/wxpython/gui_core/forms.py
    M gui/wxpython/gui_core/preferences.py
    M python/grass/script/task.py

  Log Message:
  -----------
  gui: Refactor Copy button to use Tools API, remember user preference and use StringIO (#7404)

- Limit Python API options in the copy menu strictly to the recommended Tools API
- Persist the user's last chosen copy format (Shell, Python, or JSON) across sessions using wx.Config
- Support io.StringIO for inline file inputs (e.g., r.colors rules typed directly into the field) to make the copied Python code fully portable
- Integrate a default Python API flavor selector (Tools, Script, or PyGRASS) into GUI Preferences -> Tools tab via UserSettings
- Update module dialog Copy button tooltips and code generation dynamically based on the globally chosen API style
- Implement robust multi-line script formatting for interactive file fields using io.StringIO for Tools API and tempfile for external process APIs
- Enhance JSON Copy/Paste mechanism to seamlessly embed and extract raw inline text inputs instead of volatile temporary file paths



To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications


More information about the grass-commit mailing list