Skip to content

V0.6.0#106

Merged
X2Cscope merged 56 commits intodevelopfrom
generic_gui_update
Mar 5, 2026
Merged

V0.6.0#106
X2Cscope merged 56 commits intodevelopfrom
generic_gui_update

Conversation

@edras
Copy link
Collaborator

@edras edras commented Mar 5, 2026

At this PR

  • generic_gui moved to a structured qt app, now called main_window.py under px2cscope.gui.qt
  • web gui enhanced with dashboard
  • both guis have a scripting tool
  • fixed trigger level o scope functionality
  • x2cscope can now read SFRs
  • x2cscope implemented ethernet connectivity
  • x2cscope prepared for CAN connectivity

Edras Pacola added 25 commits February 26, 2026 14:41
legend, color, gain, offset, labels
Moved from a single file to a more modular structure with separate files for controllers, dialogs, models, tabs, and workers. This should improve maintainability and readability of the codebase. The old generic_gui.py file has been renamed to generic_gui_old.py for reference during the transition period.
 Changes to be committed:
	modified:   pyx2cscope/gui/generic_gui/__init__.py
	new file:   pyx2cscope/gui/generic_gui/controllers/__init__.py
	new file:   pyx2cscope/gui/generic_gui/controllers/config_manager.py
	new file:   pyx2cscope/gui/generic_gui/controllers/connection_manager.py
	deleted:    pyx2cscope/gui/generic_gui/detachable_gui.py
	new file:   pyx2cscope/gui/generic_gui/dialogs/__init__.py
	new file:   pyx2cscope/gui/generic_gui/dialogs/variable_selection.py
	renamed:    pyx2cscope/gui/generic_gui/generic_gui.py -> pyx2cscope/gui/generic_gui/generic_gui_old.py
	new file:   pyx2cscope/gui/generic_gui/main_window.py
	new file:   pyx2cscope/gui/generic_gui/models/__init__.py
	new file:   pyx2cscope/gui/generic_gui/models/app_state.py
	new file:   pyx2cscope/gui/generic_gui/tabs/__init__.py
	new file:   pyx2cscope/gui/generic_gui/tabs/base_tab.py
	new file:   pyx2cscope/gui/generic_gui/tabs/scope_view_tab.py
	new file:   pyx2cscope/gui/generic_gui/tabs/watch_plot_tab.py
	new file:   pyx2cscope/gui/generic_gui/tabs/watch_view_tab.py
	new file:   pyx2cscope/gui/generic_gui/workers/__init__.py
	new file:   pyx2cscope/gui/generic_gui/workers/data_poller.py
fixing also imports
adding tcp and can interface
setting setup as default tab
also including on documentation
@edras edras requested a review from X2Cscope March 5, 2026 22:50
Copy link
Owner

@X2Cscope X2Cscope left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice job!

@X2Cscope X2Cscope merged commit 1d642d5 into develop Mar 5, 2026
@X2Cscope X2Cscope deleted the generic_gui_update branch March 5, 2026 22:53
X2Cscope added a commit that referenced this pull request Mar 6, 2026
* V0.6.0 (#106)

* fix zip relative path for artifacts
* tcp-ip interface implemented
* optimizing code
* enhanced interface factory for default values

according to some arguments, we may select the default interface type

 default_args = {
  "port": LNetSerial,
  "host": LNetTcpIp,
  "bus": LNetCan,
  "id": LNetLin,
 }

* unit test for tcp interface
* adding dashboard tab to web view
* Adding new widgets and config
* including scripting tab on web view
* including multiple interfaces
* fix for trigger_level
* transparent widgets on view
* refactoring generic gui to best practices

Moved from a single file to a more modular structure with separate files for controllers, dialogs, models, tabs, and workers. This should improve maintainability and readability of the codebase. The old generic_gui.py file has been renamed to generic_gui_old.py for reference during the transition period.
 Changes to be committed:
	modified:   pyx2cscope/gui/generic_gui/__init__.py
	new file:   pyx2cscope/gui/generic_gui/controllers/__init__.py
	new file:   pyx2cscope/gui/generic_gui/controllers/config_manager.py
	new file:   pyx2cscope/gui/generic_gui/controllers/connection_manager.py
	deleted:    pyx2cscope/gui/generic_gui/detachable_gui.py
	new file:   pyx2cscope/gui/generic_gui/dialogs/__init__.py
	new file:   pyx2cscope/gui/generic_gui/dialogs/variable_selection.py
	renamed:    pyx2cscope/gui/generic_gui/generic_gui.py -> pyx2cscope/gui/generic_gui/generic_gui_old.py
	new file:   pyx2cscope/gui/generic_gui/main_window.py
	new file:   pyx2cscope/gui/generic_gui/models/__init__.py
	new file:   pyx2cscope/gui/generic_gui/models/app_state.py
	new file:   pyx2cscope/gui/generic_gui/tabs/__init__.py
	new file:   pyx2cscope/gui/generic_gui/tabs/base_tab.py
	new file:   pyx2cscope/gui/generic_gui/tabs/scope_view_tab.py
	new file:   pyx2cscope/gui/generic_gui/tabs/watch_plot_tab.py
	new file:   pyx2cscope/gui/generic_gui/tabs/watch_view_tab.py
	new file:   pyx2cscope/gui/generic_gui/workers/__init__.py
	new file:   pyx2cscope/gui/generic_gui/workers/data_poller.py

* color on scope view and moving scope position and tabs
* dual window for watch and plot view
* renaming generic_gui folder to qt

fixing also imports
adding tcp and can interface
setting setup as default tab

* loading message when connecting
* scripting tab working
* update doc for gui qt
* update mchplnet pointer
* unit tests for gui qt and web
* ruff check
* mchplnet v0.4.1 + fix utils.py + docs
* added update rate on widgets
* reading SFRs
* including SFRs on Web and GUI Qt
* update project version
* fixed qt dependency on github actions
* providing dashboard_view.py for test

---------

Co-authored-by: Edras Pacola <edras.pacola@microchip.com>
Co-authored-by: Edras Pacola <edras.pacola@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants