Commit Graph
100 Commits
Author SHA1 Message Date
sani7 ed6aee69c2 update cpp templates 2026-02-14 14:32:47 +01:00
sani7 8b1db7af11 UI
optimize by passing by reference
optimize by using std::move
2026-02-14 14:32:47 +01:00
sani7 14a4e15962 server cmake
add cpp-templates to simulators path
2026-02-14 14:32:47 +01:00
sani7 d464dd88d3 b UI
fix ui table size not resizing well
2026-02-14 14:32:46 +01:00
sani7 fda9c4c5a0 UI
fix comment
2026-02-14 14:32:46 +01:00
sani7 9345620fec server sim base
make check_input_high inline and move it to header file
2026-02-14 14:32:46 +01:00
sani7 f17676d4ef b client
fix table row and column
2026-02-14 14:32:45 +01:00
sani7 af6315c486 fix for simulators 2026-02-14 14:32:45 +01:00
sani7 41058957f2 fix can 2026-02-14 14:32:45 +01:00
sani7 1b8bc4b692 b client cmake 2026-02-14 14:32:44 +01:00
sani7 135a2a03d7 move can debugger to can if 2026-02-14 14:32:44 +01:00
sani7 36ed0f3b7b fix unit tests 2026-02-14 14:32:44 +01:00
sani7 a69d2fa838 Lint 2026-02-14 14:32:44 +01:00
sani7 fbf0d02d9c clean up 2026-02-14 14:32:43 +01:00
sani7 2e1d461026 server extensions
move gpio and visa extensions to extensions folder
2026-02-14 14:32:43 +01:00
sani7 cf3aa22164 visa
remove duplicate variables
2026-02-14 14:32:43 +01:00
sani7 743dbafa1b client
add description of mainwindow
2026-02-14 14:32:42 +01:00
sani7 618172dec2 b server visa 2026-02-14 14:32:42 +01:00
sani7 d6e35e6db3 dagger
allow for custom targets via parameter
2026-02-14 14:32:42 +01:00
sani7 429afd9792 Add dagger ci support
working lint, build and test
2026-02-14 14:32:41 +01:00
sani7 42e5538c9b update for dagger ci 2026-02-14 14:32:41 +01:00
sani7 c61b1117d7 update qwt 2026-02-14 14:32:41 +01:00
sani7 8932773602 readme
add extra can device
2026-02-14 14:32:40 +01:00
sani7 e00c4978d9 doxygen
enable source browser
enable call/caller graph
2026-02-14 14:32:40 +01:00
sani7 aa3fd7565b UI item
This fixes the error: clang:optin.cplusplus.VirtualCall
2026-02-14 14:32:40 +01:00
sani7 235a0423c0 server
compatibility with previous version
2026-02-14 14:32:39 +01:00
sani7 7618789717 server
move to internal can wrapper and external can_interface
2026-02-14 14:32:39 +01:00
sani7 e7c4f3956a server
update main command line arguments
2026-02-14 14:32:39 +01:00
sani7 fc654d1e39 Lint 2026-02-14 14:32:38 +01:00
sani7 7a4eb4f92d b server
add error message if unable to bind to port
2026-02-14 14:32:38 +01:00
sani7 600e7c27b3 server can if
add critical message
2026-02-14 14:32:38 +01:00
sani7 6f4bf60b02 client docs 2026-02-14 14:32:37 +01:00
sani7 683f262fa1 doxygen
fix some documentation warnings
2026-02-14 14:32:37 +01:00
sani7 01dfb0e21d server doxygen
Add documentation to the server
2026-02-14 14:32:37 +01:00
sani7 8ef11ece30 Add doxyfile 2026-02-14 14:32:36 +01:00
sani7 7a74847f45 Client doxygen
Add documentation to the client
2026-02-14 14:32:36 +01:00
sani7 758958fd3a client websocket wrapper
remove deconstructor
2026-02-14 14:32:36 +01:00
sani7 7c6db0e02c client ui_base
remove unused signal
2026-02-14 14:32:35 +01:00
sani7 9836d40a49 Add doxygen documentation to client ui 2026-02-14 14:32:35 +01:00
sani7 3c0d01df15 client ui
rework better radiobutton
2026-02-14 14:32:35 +01:00
sani7 6915c28894 client
rename Simulator_base to UI_base
this is so that doxygen can see the difference
2026-02-14 14:32:34 +01:00
sani7 9ab54ab599 readme 2026-02-14 14:32:34 +01:00
sani7 a3a1657fb8 Lint 2026-02-14 14:32:34 +01:00
sani7 fbf8f53090 server
Ensures that the message parser returns a default "{}" response after handling an event, preventing unintended empty responses.
Also, this change avoids sending empty messages to the client unnecessarily.
2026-02-14 14:32:33 +01:00
sani7 c8ea8185b4 server websocket
Removes unnecessary debug and trace logging statements from the websocket server implementation to reduce verbosity. Also removes unused binary message processing.
2026-02-14 14:32:33 +01:00
sani7 4efe904fe7 Improves logging and adds TODO for COM device
Capitalize  first letter.
Adds a TODO comment to address future improvements regarding COM device handling.
2026-02-14 14:32:33 +01:00
sani7 e9128e4f36 sim loading
remove idea of running this thing on windows, not possible due to windows not having "export-dynamic" support
2026-02-14 14:32:32 +01:00
sani7 326a636122 server
Renames the `run` method to `start` in the simulator classes.
2026-02-14 14:32:32 +01:00
sani7 1a88e5fc40 b server sim switching
Rearranges the order of operations during simulator switching to ensure that the previous simulator is properly stopped and disconnected before the new simulator is started.
2026-02-14 14:32:32 +01:00
sani7 a2befb3ff9 b server simulators broadcast
- Fix for separate message for each ui change/sim change event by putting Qt::QueuedConnection
- Avoids broadcasting empty JSON objects produced by the change above mentioned
2026-02-14 14:32:31 +01:00
sani7 fbe19f17d3 b client
remove unused setup qwt plot function
2026-02-14 14:32:31 +01:00
sani7 935c1d4ac6 b client sim base
fix close event always executing
2026-02-14 14:32:31 +01:00
sani7 66ac531cd5 Removes validity tracking from UI table
This simplifies the code and removes redundant checks.
2026-02-14 14:32:30 +01:00
sani7 e5fefa57ac Tests for UI tabe
Adds functionality to retrieve an item from the UI table.
Also adds tests for the UI table functionality, including
serialization, label setting, item insertion, and item clearing.
2026-02-14 14:32:30 +01:00
sani7 c6e56aea4a Lint 2026-02-14 14:32:22 +01:00
sani7 031a512da5 Adds tests for UI plot functionality
Adds tests for serialization, label setting, value addition, and value cleaning of UI plot.
These tests ensure the UI plot component behaves as expected.
2026-02-14 14:32:22 +01:00
sani7 149d27d980 Updates test includes for UI components
Updates test files to include necessary headers and removes the now unused `Test.hpp` file.
2026-02-14 14:32:21 +01:00
sani7 a6f004725d Adds accessors for plot data vectors
Adds const get methods to retrieve the x and y values stored in the plot data vectors, enabling external components to read the data displayed on the plot.
2026-02-14 14:32:21 +01:00
sani7 f9c9636f95 Adds UI widget tests
Adds unit tests for UI components.
UI_can, UI_stacked_widget, UI_status_bar and UI_tab_widget
2026-02-14 14:32:21 +01:00
sani7 76b00b6108 UI tab widget
Adds bounds checks to `visible()` and `tab_name()` methods
2026-02-14 14:32:20 +01:00
sani7 7c49e4ee02 UI plot
remove unused functions
2026-02-14 14:32:20 +01:00
sani7 31a0d2e6c4 UI statusbar
add timeout read
fix for not initializing timeout
2026-02-14 14:32:20 +01:00
sani7 239c4f8f94 Fix clazy warning
reference instead of copy
2026-02-14 14:32:19 +01:00
sani7 d0c392ca0e Guards against out-of-bounds access in tab widget
Adds bounds checking to `set_selected`, `set_visible`, and
`set_tab_name` methods to prevent out-of-bounds access on the tab
data structures.
Removes unnecessary resizing logic as tab size is defined in constructor.
2026-02-14 14:32:19 +01:00
sani7 baaf33361e Renames signal for consistency
Renames the 'selected' signal to 'changed' for better
consistency with other signals and to accurately reflect the signal's purpose.
2026-02-14 14:32:19 +01:00
sani7 7cb93ec14d change Event can_clear to clear
make this a bit more general, that it can be used for more then only can
2026-02-14 14:32:18 +01:00
sani7 0f1d6aa592 client
rename ui_radiobutton, but is still unimplemented on the server
2026-02-14 14:32:18 +01:00
sani7 f55539f5f0 UI status bar
Uses base class text for status bar message
2026-02-14 14:32:18 +01:00
sani7 d7655f3e08 Adds UI spinbox tests
Adds tests for UI spinbox widgets, including JSON serialization/deserialization
and signal emission verification.
2026-02-14 14:32:17 +01:00
sani7 89ca146e97 Adds signal testing to UI elements
Extends UI element tests to include signal emission verification.

This ensures that UI elements correctly emit signals upon user interaction,
improving the reliability and responsiveness of the UI.

Adds QSignalSpy to track signal emissions for various UI components like
buttons, checkboxes, comboboxes, items, sliders, textboxes and thermos.
2026-02-14 14:32:17 +01:00
sani7 2a7959936a test clean + bug fixes 2026-02-14 14:32:17 +01:00
sani7 2a76e13305 Removes JSON constructor from UI elements
This fixes the error: clang:optin.cplusplus.VirtualCall
When virtual methods are called during construction and destruction the polymorphism is restricted to the class that’s being constructed or destructed because the more derived contexts are either not yet initialized or already destructed.
2026-02-14 14:32:16 +01:00
sani7 f58028a8a9 Adds unit property to dial.
Adds the ability to store and retrieve a unit string associated with the dial, allowing for more context-aware representation of values.
2026-02-14 14:32:16 +01:00
sani7 1bd7635085 Renames signals for consistency
Updates signal names across UI components (checkbox, textbox, and CAN) to use more consistent and descriptive names, improving code readability and maintainability. The 'on_change' and 'on_send' signals are renamed to 'changed' and 'send' respectively.
2026-02-14 14:32:16 +01:00
sani7 f7f793a0bb client
mark show and hide events as override
2026-02-14 14:32:15 +01:00
sani7 d02fc4b611 client
clean up mainwindow files
2026-02-14 14:32:15 +01:00
sani7 d07b282587 client
fix title not updating
2026-02-14 14:32:15 +01:00
sani7 1fcbe53253 client
move to QMessageBox from networkerror
2026-02-14 14:32:14 +01:00
sani7 97dee48e71 cmake tests
Add status message if GTest is found or not
2026-02-14 14:32:14 +01:00
sani7 cbc5352f4f readme
add line endings guideline
2026-02-14 14:32:13 +01:00
sani7 cb30ccc7f2 Lint script
Disable auto committing and make it optional via a cli flag
2026-02-14 14:32:13 +01:00
sani7 42aa31b4e9 example commands
fix for new id system
2026-02-14 14:32:13 +01:00
sani7 d32d9e13fe License
remove duplicate file
2026-02-14 14:32:12 +01:00
sani7 be4aafdd89 readme
fix bad syntax
2026-02-14 14:32:12 +01:00
sani7 474906c4af readme
add a good readme and some instructions on how to start creating sims
2026-02-14 14:32:12 +01:00
sani7 2b3f90e761 client ui's
remove duplicate / unused includes
2026-02-14 14:32:11 +01:00
sani7 1c40f8e9c5 client
change id_to_label to use qwidget pointer instead of id
2026-02-14 14:32:11 +01:00
sani7 8bf7c6fd79 cmake
auto copy libsim_* and libui_* to bin folder
2026-02-14 14:32:11 +01:00
sani7 f07bbe28cc fix for official pc
add no proxy to websocket
2026-02-14 14:32:10 +01:00
sani7 8668f72e6d Replaces header guards with pragma once 2026-02-14 14:32:10 +01:00
sani7 ee185b68e6 Adds check for active simulator before commands
Implements a check to ensure a simulator is active before processing commands.

This prevents errors and unexpected behavior when commands are sent without an active simulator. The check is performed at the beginning of the command parsing, and logs an error if no simulator is active, returning an empty JSON object.
2026-02-14 14:32:10 +01:00
sani7 fe0ee989e9 Improves build process for internal development
Adds an INTERNAL preprocessor definition to manage dependencies.

This change allows for a lighter build during internal development by
forward declaring some classes and excluding UI and CAN dependencies.
2026-02-14 14:32:10 +01:00
sani7 0cdd276194 UI
add statusbar
2026-02-14 14:32:09 +01:00
sani7 e3012d9580 UI
remove ui_can out of custom folder
2026-02-14 14:32:09 +01:00
sani7 1d94636296 Client
Add enabled and visible properties to UI elements
2026-02-14 14:32:09 +01:00
sani7 efcb183682 ui_items
Remove Text_size
Add setup_item to configure if an item uses text, fg color and bg color.
2026-02-14 14:32:08 +01:00
sani7 ef4df1718b client
change all look-ups from [] to .at()
2026-02-14 14:32:08 +01:00
sani7 e13bd11700 update spdlog 2026-02-14 14:32:08 +01:00
sani7 30e085ea5d Lint 2026-02-14 14:32:07 +01:00
sani7 4da26083a7 stacked widget
tested and working
2026-02-14 14:32:07 +01:00