Commit Graph

41 Commits

Author SHA1 Message Date
Dean Lee
85f8f38923 Cabana: fix segfault in dragging zoom (#26598)
fix segfault
old-commit-hash: 909a884dc5
2022-11-28 15:43:27 -08:00
Dean Lee
4a67971c61 Cabana: auto theme, detect from system. (#26563)
* auto theme

* cleanup

* get font color from ForegroundRole

* fix label color

* add padding for header

* smaller warning icon

* fix bg of binary view

* hightlight after init
old-commit-hash: 4662f1e0be
2022-11-22 14:23:49 -08:00
Dean Lee
dfdede362f Cabana: display dashes if no value available (#26557)
show dot if no value
old-commit-hash: efbfbc0622
2022-11-21 10:48:19 -08:00
Dean Lee
7bf05bc4d2 Cabana: fix auto zoom y-axis for multiple line series (#26558)
auto zoom y-axis for multiple series
old-commit-hash: 7b46928fc9
2022-11-21 10:48:08 -08:00
Dean Lee
b902c26c6f Cabana: faster align charts, visual glitches removed. (#26543)
* faster adjust chart margins

* delay adjust

* update foreground after set margins

* set display range on create

* fix init display_range

* common function updateDisplayRange

* set min max to 0 if no values

* fix axis y

* use mapToValue

* cleanup

* get minmax from series

* cleanup

* cleanup eventsMerged

* cleanup include
old-commit-hash: 17b1839e0a
2022-11-20 13:23:59 -08:00
Dean Lee
de99eb91c6 Cabana: draw line marker in drawForegound (#26542)
draw line marker in drawForegound
old-commit-hash: 9c815c2081
2022-11-18 10:25:11 -08:00
Dean Lee
40123aed4b Cabana: support for multiple series in chart (#26538)
* customize axis x & y

* new function chartView::addSignal

* support multiple series in chartView

* more

* show legend

* update changed signals only

* fix z value

* cleanup

* limit trake line in plot area

* display signal name in value_text

* &nbsp

* fix axis y

* add spaces

* cache min max value for axis y

* cleanup

* better values text

* remove force_update
old-commit-hash: 37ad8f4f3f
2022-11-17 10:52:04 -08:00
Dean Lee
ec2a47f007 Cabana: Fix title overlapping on chart with long names (#26494)
fix title overlapping
old-commit-hash: 29f24c7491
2022-11-14 10:04:14 -08:00
Dean Lee
9897d0dda8 Cabana: miscellaneous fixes (#26477)
* update pos after adjusted margins

* ts >=0

* output debug message to console

* fix freq&count incorrect after replay auto loop restart replay

* fix different height of play/pause

* delay posting CAN message if UI thread is busy

* >=

* clear undo stack after saving

* no space allowed in names

* const referer
old-commit-hash: 7b0f7312e5
2022-11-13 12:55:46 -08:00
Dean Lee
5f80ca6359 Cabana: Added support for undo & redo (#26440)
* undo/redo

* display command list to rolling the state backwards or forward

* update detailview after rolling states

* add * to title bar to indicate dbc has changed

* fix signal pointer address changed after removed

* cleanup

* fix id error

* clear undo stack after dbc file changed

* cleanup

* use map

* cleanup

* typo
old-commit-hash: 7c922eafe9
2022-11-10 10:37:38 -08:00
Dean Lee
f3fb385a74 Cabana: support deleting message (#26418)
delete message
old-commit-hash: 59bf2fc008
2022-11-09 14:19:11 -08:00
Dean Lee
ca2faafdb9 Cabana: add menu bar to main window (#26419)
* add menu bar

* show DBC name in title

* cleanup
old-commit-hash: fc872271ae
2022-11-09 11:10:57 -08:00
Dean Lee
b858a1c4a4 Cabana: use QToolBar to manage the controls in ChartsView (#26388)
use QToolBar
old-commit-hash: 45891c7907
2022-11-06 11:06:42 -08:00
Dean Lee
2a6edbea60 Cabana: move the chart title into graphics view (#26389)
remove class ChartWidget
old-commit-hash: 3dc5dbf103
2022-11-06 11:05:46 -08:00
Dean Lee
1bc0166499 Cabana: cleanup code (#26369)
* remove ChartView::enterEvent

* cleanup ChartsWidget::removeAll

* group graphics items

* remove rubber->setPalette

* helper function DBCManager::parseId

* remove variable name from dbcManager

* fix readme/Usage

* use QSlider::setRange

* cleanup include

* use emplace_back

* remove varialbe routeName from CanMessages

* remove tmp variable

* remove blank line

* cleanup layout

* clean settings layout

* connect to streamStarted

* cleanup signal/slot
old-commit-hash: ac76cc9325
2022-11-05 16:52:16 -07:00
Dean Lee
a76506d9ce Cabana: update viewport after mouse released (#26355)
update viewport after mouse released
old-commit-hash: 241d88c018
2022-11-03 20:09:14 -07:00
Dean Lee
21960039ed Cabana: update line series concurrently (#26339)
update series concurrently
old-commit-hash: e4ec1d7c4c
2022-11-03 10:44:49 -07:00
Dean Lee
6b4c205836 Cabana: add y-axis padding (#26326)
add padding
old-commit-hash: e355d7383f
2022-11-02 10:46:17 -07:00
Dean Lee
9b00da46da cabana: optimize chart update (#26327)
optimize update
old-commit-hash: 4c90bb8635
2022-11-02 10:45:54 -07:00
Dean Lee
1e30802b36 Cabana: fix update issues when the the replay is paused (#26311)
fix state not updated if replay is paused
old-commit-hash: 6ca6a26d4c
2022-11-01 09:31:47 -07:00
Dean Lee
6803215105 Cabana: fix mouse freezes / hangs (#26292)
* fix mouseReleaseEvent

* trigger ci
old-commit-hash: 3fc373b4e4
2022-10-31 13:59:16 -07:00
Dean Lee
37b0ba7535 Cabana: sync button state with chart (#26285)
sync button state with charts
old-commit-hash: 9c7e375944
2022-10-30 07:31:43 -07:00
Dean Lee
bdadda4a0e Cabana: improve track line (#26231)
* improve track line

* show text label on the left if reach the right edge

* cleanup

* cleanup
old-commit-hash: 8de9bbaa73
2022-10-28 10:55:05 -07:00
Dean Lee
72f6a3b56d Cabana: change the chart theme in setting (#26220)
* change the chart theme in setting

* change title colors

* cleanup
old-commit-hash: ba570b963f
2022-10-27 14:48:40 -07:00
Dean Lee
491009e0fa Cabana: fix marker z-index (#26254)
old-commit-hash: d679659018
2022-10-27 13:59:52 -07:00
Dean Lee
a02e81b710 Cabana: limit X-axis range from settings (#26213)
* limit X-axis range from settings

* continue

* update range if events merged

* update line series by range

* cleanup removeChart

* cleanup updateAxisy
old-commit-hash: 728d969249
2022-10-26 12:59:37 -07:00
Dean Lee
2a6099a2c1 Cabana: Fix unable to display charts for same signals from different buses. (#26191)
keep charts in list instead of hash
old-commit-hash: 8697e928fc
2022-10-21 08:31:28 -07:00
Dean Lee
adf0f69254 cabana: fix chart margins (#26125)
old-commit-hash: 544526edeb
2022-10-17 21:00:36 -07:00
Dean Lee
e78b3ceee9 Cabana: align the charts properly (#26116)
old-commit-hash: 60586e0d58
2022-10-17 14:39:18 -07:00
Dean Lee
775442d196 Cabana: add chart_height setting (#26066)
add chart_height setting
old-commit-hash: 93346c31d3
2022-10-17 10:20:27 -07:00
Dean Lee
1d1d7b0fb8 Cabana: complete edit functions (#26097)
complete forms
old-commit-hash: e25ea85296
2022-10-16 07:55:53 -07:00
Dean Lee
bf2c8ed41e Cabana: right click on the chart to reset zoom (#26088)
old-commit-hash: deac907cb4
2022-10-15 11:36:09 -07:00
Dean Lee
9e0fa02410 Cabana: display the (x,y) values while MouseMove on the chart (#26064)
old-commit-hash: cc6dd18cf0
2022-10-13 13:24:55 -07:00
Dean Lee
9d1154ecb5 cabana: keep scrollarea frame (#26056)
add frame back
old-commit-hash: b65fad9e8f
2022-10-12 17:04:53 -07:00
Dean Lee
62adf87f40 Cabana: stable initial release (#26004)
* increase form size & fix wrong charts number

* set max axisy to 1.0 if no value

* show 'close' button in floating window

* alwasy show scroll bar

* complete the logs

* more

* increase size to 50

* keep logs for all messages

* more

* rename signal

* better height

* avoid flicker

* dont call setupdatesenabled

* filter dbc files bye typing

* remove all charts if dbc file changed

* fix wrong idx

* bolder dbc filename

* update chart if signal has been edited

* new signals signalAdded,signalUpdated

* split class Parser into CanMessages and DBCManager

* cleanup

* updateState after set message

* cleanup

* emit msgUpdated

* clear history log if selected range changed

* always update time

* change title layout

* show selected range

hide title bar if no charts

less space between title and chart

* custome historylogmodel for extreme fast update

* move historylog to seperate file

* 2 decimal

* cleanup

cleanup

* left click on the chart to set start time

* todo

* show tooltip for header item&cleanup binaryview

add hline to signal form

* better paint

* cleanup signals/slots

* better range if min==max

* set historylog's minheight to 300

* 3x faster,sortable message list.

* zero copy in queued connection

* proxymodel

* clear log if loop to the begin

* simplify history log

* remove icon

* remove assets

* hide linemarker on initialization

* rubber width may less than 0

* dont zoom char if selected range is too small

* cleanup messageslist

* don't zoom chart if selected range less than 500ms

* typo

* check boundary

* check msg_id

* capital first letter

* move history log out of scrollarea

* Show only one form at a time

* auto scroll to header

d

* reduce msg size
entire row clickable

rename filter_msgs
old-commit-hash: 0fa1588f6c
2022-10-12 13:55:17 -07:00
Dean Lee
25869e45ce cabana: fix Incorrect Y-Axis Scale (#26018)
old-commit-hash: 2ed82387a5
2022-10-08 14:10:00 -07:00
Dean Lee
a5e61f27cf cabana: Docking and undocking charts (#25983)
* floating dock charts

* more button

* setMinimumSize

* move reset zoom button to title bar

* show chart count

* cleanup

* reduce flicker

* dont update linemarker if pos not changed

* cleanup

* remove blank line

* always show dock/undock button
old-commit-hash: 9ec262bbfd
2022-10-06 13:57:11 -07:00
Dean Lee
0bc6e0dc46 cabana: Fix the incorrect Y axis (#25984)
old-commit-hash: 2d9e797259
2022-10-06 13:35:56 -07:00
Dean Lee
fb29ee311a cabana: insert new chart at the top (#25981)
* small cleanup

* new chart insert at the top
old-commit-hash: 4cd3753d98
2022-10-06 11:20:49 -07:00
Dean Lee
f93f4e9f9b canbana: complete basic functions (#25965)
* add chart header

* get all signal val from logs

* loop in selected range

* clear list before append

* automatically zoom on yaxis

* cleanup

* sync charts

* fix event_begin_sec

* set the color of rubber

* add TODO

* sync slider with charts

* keep video aspect ratio

* sync plot buttons

* reduce flickers

* cleanup

* refactor detail view

* clear counters

* more

use qcamera
old-commit-hash: a6ba073231
2022-10-05 21:17:22 -07:00
Dean Lee
292d55cf8a c++ cabana: Initial version (#25946)
* draft

* continue

* fix QChart unresponsive with large points

* build with --extras

* add filter

* save DBC button

* more buttons

* add flag to use qcamera

* stop replay in dctor

* README

* use getMsg

* video control

* edit signal

* add colors

* correct ts

* add/edit signals

* use bus:address as key
old-commit-hash: 1b8324af87
2022-10-03 15:19:42 -07:00