Commit Graph

293 Commits

Author SHA1 Message Date
Srivats P
9208423372 Tweak find-replace UI
* matchAny op correctly hides findValue/findMask widgets
 * reorder widgets in the .ui file as per their actual appearance
 * remove tab order since the above reorder also fixes tab order
 * fix stretch factors so that UI redering doesn't change too much when
 things are checked/unchecked
2021-12-12 10:52:43 +05:30
Srivats P
16b353ae30 Alloc/free Pcap import options dialog every time
The earlier code was trying to reuse the dialog but this was throwing
an unexpected error every time -

    External WM_DESTROY received for QWidgetWindow

This commit fixes this error message
2021-12-11 21:13:15 +05:30
Srivats P
b8a0de377a Add find-replace preview as a TODO item 2021-12-11 16:18:38 +05:30
Srivats P
4aedc61c8e Use uint64 for find/replace QVariant instead of string 2021-12-11 15:57:02 +05:30
Srivats P
f0c7ef50f7 Rename FieldEdit::setMask as FieldEdit::setMaskMode 2021-12-11 13:40:44 +05:30
Srivats P
975ce8093d Remove find-replace progress bar TODO as it's done 2021-12-11 13:01:31 +05:30
Srivats P
fb91a094fc Show find-replace progress bar 2021-12-11 12:36:33 +05:30
Srivats P
a7aa93b9e9 Show affected field and stream count post replace 2021-12-09 10:14:47 +05:30
Srivats P
c1610f4c99 Derive field max from bitSize instead of saving it 2021-12-09 09:52:42 +05:30
Srivats P
dc7ac89c30 Verify find/replace mask works for all field types 2021-12-09 08:26:35 +05:30
Srivats P
4c6d8f35d6 Verify and fix Ip6Address type field edit 2021-12-08 21:36:39 +05:30
Srivats P
2eab3daa2f Set placeholder text for field edit types uint/mac 2021-12-06 21:14:38 +05:30
Srivats P
7cf9c91014 Verify and fix Ip4Address type field edit 2021-12-06 20:56:40 +05:30
Srivats P
9385b31bc5 Verify and fix MacAddress type field edit
Use QRegularExpression instead of QRegExp as the latter is deprecated in
Qt6
2021-12-05 12:09:02 +05:30
Srivats P
d3400f0897 Validate find-replace value based on field type
Only kUInt64 type has been verified for this commit.

Others are pending.
2021-12-04 12:17:37 +05:30
Srivats P
b60aad45d1 Implement find-replace logic for fields <= 64 bits 2021-12-03 19:01:32 +05:30
Srivats P
e19083ed3f Fleshed out some of the find-replace code 2021-11-27 22:13:55 +05:30
Srivats P
990c13e67a Add Find & Replace UI with skeletal code 2021-11-26 22:30:45 +05:30
Srivats P
a1c165b7b3 Fix MacOS build break 2021-11-17 18:39:14 +05:30
Srivats P
f731b48676 Allow k/m units as input to port pps/bps
Also,
  * Revert to old value if new input is not valid
  * Refactored auto calc and display of rate to XLocale
2021-11-11 21:38:57 +05:30
Srivats P
910fccbfc6 Change port bit rate display unit automatically
This is for user convenience and easier comprehension
2021-11-10 19:22:49 +05:30
Srivats P
27e853e6e8 Reduce UI width of load % input box 2021-11-09 22:21:12 +05:30
Srivats P
dd7f4a6fd0 Add load % as an input for port rate 2021-11-07 19:05:11 +05:30
Srivats P
14993073fe Extract portWidget from streamsWidget 2021-11-06 19:18:48 +05:30
Srivats P
295fc93e7b Prepare to extract portWidget from streamsWidget 2021-11-05 15:32:23 +05:30
Srivats P
0a825a0aa3 Extract streamsWidget code out of portsWindow
All functionality seems to be working, so hopefully no regressions!

It does appear to me that portWidget can be extracted out of
streamsWidget
2021-11-05 15:27:37 +05:30
Srivats P
214c774fc6 Prepare to extract streamsWidget code from portsWindow 2021-11-05 13:02:19 +05:30
Srivats P
b52d1c5be3 Extract streamswidget.ui out of portswindow.ui
Only UI extraction is done. PortsWindow is still a combined class that
will be separated in the subsequent commit(s).

Although this commit builds successfully, but the stream actions don't
work because the stream widget's signals are not connected to port
window's slots
2021-11-05 13:02:19 +05:30
Srivats P
d9d68ad65c Prepare to extract streamsWidget out of portsWindow 2021-11-05 13:02:19 +05:30
Srivats P
d77074da1a Upgrade portswindow.ui to QtDesigner 5.9.4 2021-11-05 13:02:19 +05:30
Srivats P
9789d475a8 Show/hide the Next column in stream list on tx mode change 2021-10-21 21:52:54 +05:30
Srivats P
9c44bb8e12 Update stream view actions after opening a streams file
Fixes #312
2021-09-25 12:41:31 +05:30
Srivats P
d5365a25d4 Add IMIX as a Frame Length mode
Use Simple IMIX as defined in Wikipedia - Frame lengths 64, 594, 1518 in
a 7:4:1 ratio
2021-09-23 08:11:22 +05:30
Srivats P
a1705e7619 Try to reconnect with drone after disconnect
This used to work earlier, but got broken when the incompatibility check
was added as we didn't want reconnect to be initiated if versions were
incompatible.

This fix will always try to reconnect, except for following cases -
 * Compatibility check is false
 * Bad data received from drone
 * User triggered disconnect

Fixes #333
2021-04-25 10:52:42 +05:30
Srivats P
bcc21ccded Gracefully handle portgroup disconnect during Apply
Fixes #326
2020-12-27 17:00:28 +05:30
Srivats P
c97a359f85 Warn about retreiving stream stats from a transmitting port
Tx stream stats are available only after transmit is finished.

Fixes #334
2020-12-27 11:28:18 +05:30
Srivats P
ea31cf30fb Select previous tab when a stream stats tab is closed
The default behaviour was to select the tab to the right of the
closed tab which is not very useful for us since the right tab
will be the Logs tab.

Fixes #331
2020-12-27 11:16:39 +05:30
Srivats P
640e7029b9 Fix port reservation getting cleared incorrectly
This would happen when other port config properties were modified but
the reserve checkbox itself was not modified.

Fixes #317
2020-10-23 13:21:02 +05:30
Srivats P
43fe3964f9 Fix unknown GUID 4294967295 in stream statistics
4294967295 (0xffffffff) is actually used internally by Ostinato for the
Total or Aggregate stats. When stream stats are fetched from more than
one portgroups, a kAggrGuid entry was added for each portgroup in the
GUID list. However, the GUI only tags the last row with the kAggrGUID as
the "Total" row.

Fix is to ensure we add kAggrGuid only once to _guidList.
2020-10-23 12:42:57 +05:30
Srivats P
f2635acb09 Hide the SVG label at creation
When required the appropriate pixmap (error/warn) will be set and the
label will be shown.
2020-06-13 21:36:51 +05:30
Srivats P
23d855f201 Add svg module to required QT modules
MacOS seems to need svg module to show SVG icons
2020-06-13 21:35:53 +05:30
Srivats P
2028d0f25b Start the error/warn animation from center of app
Irrespective of whether logs window is visible or not, show and
animate the icon from the center of the main window; end point is center
of logs window if visible, or the logs window tab icon if not visible.
2020-05-31 21:01:10 +05:30
David Mueller
f14c02b065
Add missing include cmath 2020-05-13 09:28:59 -07:00
Srivats P
1f8bfd2393 Update copyright to 2020 in About 2020-05-13 20:48:37 +05:30
Srivats P
8859a4c152 Tweak the animated error/warn GIF icons
Two frames were deleted from each end of the sequence so that the icon
never goes fully white/blank
2020-05-13 20:39:45 +05:30
Srivats P
f92161e755 Add XXX note about LogsWindow::isVisible_ 2020-05-10 19:19:32 +05:30
Srivats P
0e72a58dd7 Call attention to the warn/error logs using animation 2020-05-10 18:43:08 +05:30
Srivats P
dccf2042f0 Abort connection if bad data received from drone
Currently we would crash because of qFatal(). The new behaviour is
better. Error is reported in the logs window alongwith a suggestion on
what to check.
2020-05-09 09:50:32 +05:30
Srivats P
1e1e0b0c48 Clear current and selection when restoring default view
This is done for all top level windows - ports, stats, logs

At startup, the local portgroup would automatically become current with
the result that the welcome page would not be visible. Not sure why but
an explicit setFocus of ports window seems to avoid it.
2020-05-07 18:40:31 +05:30
Srivats P
f309ce99cc Set top and bottom docks to equal height at startup 2020-05-06 18:01:44 +05:30