wireshark/ui
Peter Wu 1cd22559a8 Qt: convert UatDialog to model/view pattern, improve UX
Fixes:
 - Fix crash (heap-use-after-free) on removing a record while editing.
 - Mark a record as invalid if any of the fields fail the validation.
   (Fixes crash in at least the ISAKMP dissector.)
 - Prevent saving of invalid UAT entries (e.g. empty UATs).
 - Do not close the dialog on pressing Enter/Escape while editing,
   close the editor instead.
 - Fix HTML injection in the error messages.

Improvements:
 - Tab-navigation now works between fields.
 - The field editor is now closed once the focus is lost.
 - Fields that fail validation are marked (currently with a pink color).
 - The error hint selection has become smarter (see comments in
   UatDialog::checkForErrorHint).
 - Properly recognizes PT_TXTMOD_HEXBYTES formats like "aa:bb"
   (previously it would not expect the ":" and report a bad length).
   A validator prevents invalid strings from being entered.
 - The OK button is disabled when new/edited records are bad. Notably,
   existing (possibly invalid) records are skipped. (Bug 7471).

Live validation (while typing in the editor) was dropped during
conversion, but it can be added later if desired.

Drag and drop reordering still needs to be implemented.

Bug: 11714
Bug: 7471
Change-Id: Ic0b6a177f90503fbd65b5001d8a87a10e38f4d64
Reviewed-on: https://code.wireshark.org/review/17994
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-10-12 03:53:27 +00:00
..
cli tshark: follow streams should start with chunk 1. 2016-10-03 00:14:41 +00:00
gtk Combine Decode As and port preferences for tcp.port dissector table. 2016-10-08 02:44:53 +00:00
qt Qt: convert UatDialog to model/view pattern, improve UX 2016-10-12 03:53:27 +00:00
win32 Have "All Capture Files" match only capture files. 2016-09-10 06:45:08 +00:00
.editorconfig
alert_box.c Make failure_alert_box() be printf-like. 2016-03-27 02:06:28 +00:00
alert_box.h Make failure_alert_box() be printf-like. 2016-03-27 02:06:28 +00:00
all_files_wildcard.h
capture.c
capture.h
capture_globals.h
capture_ui_utils.c
capture_ui_utils.h
CMakeLists.txt cmake: make WERROR_COMMON_FLAGS a normal string 2016-09-30 20:08:02 +00:00
commandline.c More signed vs. unsigned argument cleanups. 2016-09-11 20:49:05 +00:00
commandline.h More signed vs. unsigned argument cleanups. 2016-09-11 20:49:05 +00:00
console.c
console.h
decode_as_utils.c Combine Decode As and port preferences for tcp.port dissector table. 2016-10-08 02:44:53 +00:00
decode_as_utils.h Combine Decode As and port preferences for tcp.port dissector table. 2016-10-08 02:44:53 +00:00
doxygen.cfg.in
export_object.c
export_object.h
export_object_dicom.c
export_object_http.c
export_object_smb.c
export_object_tftp.c
export_pdu_ui_utils.c Allow create_tempfile to support a suffix. 2016-06-01 06:24:05 +00:00
export_pdu_ui_utils.h Implement Export PDU for tshark 2016-05-03 10:17:46 +00:00
file_dialog.h Add JSON export to Qt/GTK UI 2016-06-20 01:22:57 +00:00
firewall_rules.c Firewall rule fixups. 2016-06-06 06:27:47 +00:00
firewall_rules.h Qt: Firewall Rules dialog. 2016-06-01 23:37:25 +00:00
help_url.c Replace an #ifdef with g_path_is_absolute() 2016-07-23 19:38:04 +00:00
help_url.h Fix building without extcap enabled 2016-03-21 17:10:21 +00:00
iface_lists.c *_stdup_printf -> strdup for "single string only" formatting. 2016-06-06 06:03:58 +00:00
iface_lists.h
io_graph_item.c
io_graph_item.h Place variable declarations where they're used. 2016-09-07 01:43:22 +00:00
language.c Use "system" for "use system language", and don't try to print a null string. 2016-04-28 19:34:02 +00:00
language.h Use "system" for "use system language", and don't try to print a null string. 2016-04-28 19:34:02 +00:00
last_open_dir.h
main_statusbar.h
Makefile.am Remove Makefile.common files 2016-06-30 11:04:17 +00:00
mcast_stream.c Revert "tap: change glib functions to wmem." 2016-06-19 10:47:10 +00:00
mcast_stream.h
packet_list_utils.c Qt: Support "Resolve Names" with multiple custom column fields 2016-08-27 11:15:34 +00:00
packet_list_utils.h
persfilepath_opt.c
persfilepath_opt.h
preference_utils.c Combine Decode As and port preferences for tcp.port dissector table. 2016-10-08 02:44:53 +00:00
preference_utils.h Combine Decode As and port preferences for tcp.port dissector table. 2016-10-08 02:44:53 +00:00
profile.c
profile.h
progress_dlg.h
proto_hier_stats.c
proto_hier_stats.h
recent.c Use separate main geometry settings for Qt and GTK+. 2016-06-08 03:41:32 +00:00
recent.h Use separate main geometry settings for Qt and GTK+. 2016-06-08 03:41:32 +00:00
recent_utils.h
rtp_media.c
rtp_media.h
rtp_stream.c Revert "tap: change glib functions to wmem." 2016-06-19 10:47:10 +00:00
rtp_stream.h RTP player: increase the maximum number of silence frames to 30 minutes worth. 2016-06-23 03:30:39 +00:00
service_response_time.c
service_response_time.h
simple_dialog.h
software_update.c
software_update.h
ssl_key_export.c
ssl_key_export.h
tap-iax2-analysis.c
tap-iax2-analysis.h
tap-rlc-graph.c Revert "tap: change glib functions to wmem." 2016-06-19 10:47:10 +00:00
tap-rlc-graph.h
tap-rtp-analysis.h
tap-rtp-common.c
tap-rtp-common.h
tap-sctp-analysis.c Revert "tap: change glib functions to wmem." 2016-06-19 10:47:10 +00:00
tap-sctp-analysis.h
tap-sequence-analysis.c Qt: Only color sequence analysis items having color filter 2016-10-02 17:55:40 +00:00
tap-sequence-analysis.h Qt: Only color sequence analysis items having color filter 2016-10-02 17:55:40 +00:00
tap-tcp-stream.c Revert "tap: change glib functions to wmem." 2016-06-19 10:47:10 +00:00
tap-tcp-stream.h Qt: add initializers (CID 1162824). 2016-07-06 06:48:10 +00:00
tap_export_pdu.c Ensure to have a valid string pointer when writing OS SHB option 2016-07-26 13:48:40 +00:00
tap_export_pdu.h Implement Export PDU for tshark 2016-05-03 10:17:46 +00:00
text_import.c Qt: Multi line import from hex dump without offsets 2016-06-13 08:02:04 +00:00
text_import.h Make the Flex scanners and YACC parser in libraries reentrant. 2016-04-03 22:21:29 +00:00
text_import_scanner.h
text_import_scanner.l Make the Flex scanners and YACC parser in libraries reentrant. 2016-04-03 22:21:29 +00:00
time_shift.c Avoid unnecessary replacement source file floorl.c 2016-04-04 23:58:31 +00:00
time_shift.h
traffic_table_ui.c Qt: Conversation time column updates. 2016-09-02 23:53:37 +00:00
traffic_table_ui.h Qt: Conversation time column updates. 2016-09-02 23:53:37 +00:00
ui_util.h
util.c Replace and remove host_ip_af() function 2016-04-08 20:49:22 +00:00
util.h
voip_calls.c Revert "tap: change glib functions to wmem." 2016-06-19 10:47:10 +00:00
voip_calls.h