Commit Graph
1362 Commits
Author SHA1 Message Date
Andy Huska e52a74ac7a Found a bug where complete frames being removed from the buffer were being shorted by 1 character
Committing now with debug comments for future reference
2022-10-03 16:36:30 -05:00
Andy Huska 08953a4004 Improved socketcand input buffer handling to reduce lost data.
No longer tossing partial frames, saving the data to concat with future data.
On startup there can be some data loss, but after it gets rolling there is none.
Added rough provision to ensure the buffer doesn't get filled with bad data, but
the decodeFrames recursive calls do a pretty good job of getting rid of it so I
haven't seen the buffer grow after millions of frames coming over a UDP-based VPN.
2022-10-03 11:26:28 -05:00
Andy Huska dc0b25bee8 Added setting for fixed width vs normal font in the data tables 2022-09-30 16:33:07 -05:00
Collin Kidder 61389864a0 Merge pull request #524 from bigoulours/patch-2
Priorizing exact match over J1939 and GMLAN
2022-09-29 21:27:55 -05:00
Collin Kidder 7af4748468 Merge pull request #518 from llange/qt6.3-qwheelevent
remove obsolete `QWheelEvent::delta()` (qt6)
2022-09-29 21:23:03 -05:00
Collin Kidder 4ea4e6e99a Merge pull request #514 from llange/fix-mqtt-static-cast-error
fix some static cast errors in QMqtt
2022-09-29 21:20:16 -05:00
Collin Kidder f78593c412 Merge pull request #513 from llange/fix-qmqtt-ambiguous-conversion
fix QMqtt ambiguous conversion
2022-09-29 21:17:42 -05:00
Collin Kidder 4d70601103 Merge pull request #512 from llange/itemflags
Use enums from `Qt::ItemFlags`
2022-09-29 21:16:24 -05:00
Collin Kidder c8e337d498 Merge pull request #511 from llange/qt6.3-qserialport
remove `QSerialPort` obsolete enum values (qt6)
2022-09-29 21:15:38 -05:00
Collin Kidder f715a7622e Merge pull request #510 from llange/qt6.3-skipemptyparts
replace `QString::SkipEmptyParts` with `Qt::SkipEmptyParts` (qt6)
2022-09-29 21:15:06 -05:00
Andy Huska bd8582b8e3 Added combobox for nodes so msg combobox isnt so long
Added disabled filenames in node combobox so you can understand what is what
Added node column to table
Made table columns sortable so you can sort by node name or message name

Want to make table fixed width font capable
Want to make table rearrangable
Want to make table rows shorter to fix more info in a window
Want to make it possible to have multiple signal viewer windows
Want to add ability to click on signals and add them to graphs like the main window
2022-09-28 20:02:27 -05:00
Andy Huska e8c2bba0c4 Merge branch 'master' into add_nodenameinsignalviewer 2022-09-28 19:16:33 -05:00
Andy Huska 3d9790344c Merge branch 'master' into fix_dbc_creation 2022-09-28 19:15:11 -05:00
Andy Huska 8232d90a73 Merge branch 'add_allowfilterstostayuponclear' 2022-09-28 19:14:02 -05:00
bigoulours b8039f9b16 Priorizing exact match over J1939 and GMLAN
Hi Collin,
I had a case where two ECUs were sending the same PGN (with different contents though), leading to SavvyCAN picking the first found PGN-Match.
Hence my proposal: go over the list until an exact match is found, otherwise returning the best match (same PGN).
2022-09-28 15:42:19 +02:00
Ludovic LANGE 88e51a4a32 remove obsolete QWheelEvent::delta() (qt6)
The function `QWheelEvent::delta()` is [deprecated in Qt5](https://doc.qt.io/qt-5/qwheelevent-obsolete.html#delta),
and has been removed in Qt6.

We port it to `QWheelEvent::angleDelta()`.
2022-09-27 23:01:58 +02:00
Ludovic LANGE 5002f3ebec fix some static cast errors in QMqtt
The following error occurs twice:
```
mqtt/qmqtt_ssl_socket.cpp:49:13: error: static_cast from 'QAbstractSocket::SocketError (QAbstractSocket::*)() const' to 'void (QSslSocket::*)(QAbstractSocket::SocketError)' is not allowed
```

It may not be the cleanest fix but the it is the only one I could come with...
2022-09-27 22:15:47 +02:00
Ludovic LANGE 1af5cbacc6 fix QMqtt ambiguous conversion
Prevent error:
```
moc_qmqtt_client.cpp:459:53: error: conversion from 'QMQTT::ConnectionState' to 'QChar' is ambiguous
```
2022-09-27 22:09:30 +02:00
Ludovic LANGE 74388791bf remove QSerialPort obsolete enum values (qt6)
Three enums (`QSerialPort::ParityError`, `QSerialPort::FramingError`,
`QSerialPort::BreakConditionError`) are [deprecated since Qt5.6](https://doc.qt.io/qt-5/qserialport.html)
and removed from Qt6.

We remove them, it's unfortunate but I don't know how to replace
these - it seems that we need to handle those in an [OS-specific
way](https://codereview.qt-project.org/c/qt/qtserialport/+/125517/).
2022-09-27 21:36:38 +02:00
Ludovic LANGE bcbe3d38bd Use enums from Qt::ItemFlags
It seems that one my compiler we need to use an explicit enum instead of
the constant it represents.
It shouldn't cause any issue as the value is the same.
2022-09-27 21:29:03 +02:00
Ludovic LANGE 768ebf9966 replace QString::SkipEmptyParts with Qt::SkipEmptyParts (qt6)
`QString::SkipEmptyParts` is [deprecated since around Qt5.14](https://doc.qt.io/qt-5/qstring-obsolete.html),
and has been removed in Qt6.

We replace it with `Qt::SkipEmptyParts` for Qt >= 5.14
2022-09-27 21:04:19 +02:00
Andy Huska 23d995060b Merge pull request #4 from collin80/master
getting the latest after this branch was pulled in
2022-09-27 05:55:34 -07:00
Collin Kidder ea0dbd90a8 Merge pull request #508 from llange/qt6.3-qcustomplot
make QCustomPlot compatible with Qt6.2+ (qt6)
2022-09-26 21:26:56 -05:00
Collin Kidder 61088d0184 Merge pull request #507 from llange/qt6.3-qatomicinteger
replace QAtomicInt load()/store() with loadRelaxed()/storeRelaxed()
2022-09-26 21:25:10 -05:00
Collin Kidder 9da32e97f8 Merge pull request #506 from llange/qt6.3-itemdatarole
replace BackgroundColorRole/TextColorRole with BackgroundRole/ForegroundRole (qt6)
2022-09-26 21:24:13 -05:00
Collin Kidder 52a2d719c7 Merge pull request #505 from llange/qt6.3-qmetatype
remove qRegisterMetaTypeStreamOperators (qt6)
2022-09-26 21:23:49 -05:00
Collin Kidder 194bd545e6 Merge pull request #504 from llange/qt6.3-qrandomgenerator
replace qrand/qsrand with QRandomGenerator (qt6)
2022-09-26 21:23:10 -05:00
Collin Kidder f653ef859a Merge pull request #503 from llange/qt6.3-qelapsedtimer
replace QTime with QElapsedTimer when possible (qt6)
2022-09-26 21:22:22 -05:00
Collin Kidder 51f02a0332 Merge pull request #502 from qurrent-llc/add_allowfilterstostayuponclear
Add option to main window to allow filters to persist when clearing frames
2022-09-26 21:21:45 -05:00
Ludovic LANGE 97844ad1e5 make QCustomPlot compatible with Qt6.2+ (qt6)
Cf the discussion here: https://www.qcustomplot.com/index.php/support/forum/2380
2022-09-24 22:23:08 +02:00
Ludovic LANGE 5ac5a7d45f replace QAtomicInt load()/store() with loadRelaxed()/storeRelaxed()
Since Qt5, some methods of QAtomicInteger [are deprecated](https://doc.qt.io/qt-5/qatomicinteger-obsolete.html).

Qt6 remove those methods, thus we need to replace them.
2022-09-24 22:13:02 +02:00
Ludovic LANGE c2fc1f179e replace BackgroundColorRole/TextColorRole with BackgroundRole/ForegroundRole (qt6)
Since long time ago (12yrs), Qt::BackgroundColorRole/Qt::TextColorRole are aliased by Qt::BackgroundRole/Qt::ForegroundRole
and raise a deprecation warning.

Qt6 remove those values, thus we need to use Qt::BackgroundRole/Qt::ForegroundRole.
2022-09-24 22:06:09 +02:00
Ludovic LANGE 5a18c611e1 replace QTime with QElapsedTimer when possible (qt6)
Since Qt5, some methods of QTime [are deprecated](https://doc.qt.io/qt-5/qtime-obsolete.html).

Qt6 remove those methods, thus in two instances we need to use
a [QElapsedTimer](https://doc.qt.io/qt-6/qelapsedtimer.html) instead of a QTime.

QElapsedTimer is available since Qt5.4, and is already used in the source
code.
2022-09-24 17:54:51 +02:00
Ludovic LANGE 9fb86e649f remove qRegisterMetaTypeStreamOperators (qt6)
Since Qt6, some methods of [QMetaType are removed](https://doc.qt.io/qt-6/qtcore-changes-qt6.html#the-qmetatype-class).

We remove `qRegisterMetaTypeStreamOperators()` calls for Qt >= 6
2022-09-24 17:51:25 +02:00
Ludovic LANGE 07db287407 replace qrand/qsrand with QRandomGenerator (qt6)
Since Qt5, qrand/qsrand methods [are deprecated](https://doc.qt.io/qt-5/qtglobal-obsolete.html#qrand).

Qt6 remove those methods, thus we need to use instead a [QRandomGenerator](https://doc.qt.io/qt-6/qrandomgenerator.html).

QElapsedTimer is available since Qt5.10, and is already used in the source code.
2022-09-24 17:34:40 +02:00
Andy Huska 7b65451874 Merge branch 'add_allowfilterstostayuponclear' 2022-09-23 15:51:02 -05:00
Andy Huska d5c0731366 Merge branch 'collin80-master' into add_allowfilterstostayuponclear 2022-09-23 15:40:09 -05:00
Andy Huska 9312cadd88 Merge branch 'master' of https://github.com/collin80/SavvyCAN into collin80-master 2022-09-23 15:39:45 -05:00
Andy Huska 5ffe161210 more clean up 2022-09-23 15:30:58 -05:00
Andy Huska f38e0b0bfa Took out unnecessary exception recover code
Cuz app is going to crash anyway, no need to make a mess
2022-09-23 15:28:41 -05:00
Collin Kidder a3bd67ea99 Merge pull request #499 from qurrent-llc/fix_addframebadalloc
Fix frames and filteredFrames from growing until out of memory
2022-09-22 18:12:54 -05:00
Collin Kidder 5a4f211ca0 Merge pull request #498 from qurrent-llc/fix_dbc_delete
Fixed regression where non-commented dbc editor node would not delete
2022-09-22 18:11:47 -05:00
Andy Huska 47d63c6296 duplicate works! multiplexed signals are not copied at this time
need to learn more about them first

need to do clean up and corner case handling
2022-09-22 18:04:27 -05:00
Andy Huska 27b58552df rebase working but definitely needs clean up for all the whatifs 2022-09-21 18:04:11 -05:00
Andy Huska 74366d1c6b context menu in place for node rebase/duplicate
need to add menu for rebase options and code for both actions
2022-09-20 17:49:04 -05:00
Andy Huska 0ee9eacbb3 realized that the value list was already supported so reverted
my custom code.  The issue that made me go down this path
is related to the little endian checkbox mysteriously and
inconsistently unchecking and therefore interpreting enum values
wrong...would really like to find this.
2022-09-20 17:08:20 -05:00
Andy Huska d9e371c494 The last commit of the ext ID fix removed need for modal editor 2022-09-20 16:50:04 -05:00
Andy Huska 6accf2e9e7 Fixed bug in extended addressing check
where ID was being AND'ed with 80000000 decimal instead of hex
2022-09-20 16:48:11 -05:00
Andy Huska da7a721494 Changed default signalviewer message matching to be by ID 2022-09-20 16:27:53 -05:00
Andy Huska e6058ead34 Progress!
Masked error caused by saving dbc while editor is open that causes
msg IDs to go crazy by making editor modal, but that affects all
other windows, so might be a better fix.

Added new value type of VALUE_STRING, probably better named
ENUMERATED_STRING, and it uses the table in the editor to define
the enum.

Fixed a bug in the signal viewer load when a signal is not matched
(I found it by renaming a signal and then loading)
2022-09-20 16:23:18 -05:00