diff options
author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2019-12-20 07:57:04 +0200 |
---|---|---|
committer | Gerald Combs <gerald@wireshark.org> | 2019-12-21 20:25:51 +0000 |
commit | 0442f7a2c3c6830f7ee9a2154bcfdbd179eb9225 (patch) | |
tree | 9cb8083fafac8c45220d80101c6b01c487763393 /ui/qt | |
parent | 1c98b5b1800416460014b4dd6cdd4bba2d9c5a52 (diff) |
UI: Fix compilation with Qt 5.14
Change-Id: I8adae4609ff2857cb12bc803839ebb2c6afbd264
Reviewed-on: https://code.wireshark.org/review/35517
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Diffstat (limited to 'ui/qt')
26 files changed, 152 insertions, 135 deletions
diff --git a/ui/qt/bluetooth_att_server_attributes_dialog.cpp b/ui/qt/bluetooth_att_server_attributes_dialog.cpp index 045c0de6cc..ebce65996a 100644 --- a/ui/qt/bluetooth_att_server_attributes_dialog.cpp +++ b/ui/qt/bluetooth_att_server_attributes_dialog.cpp @@ -281,7 +281,7 @@ tap_packet_status BluetoothAttServerAttributesDialog::tapPacket(void *tapinfo_pt return TAP_PACKET_REDRAW; } - handle.sprintf("0x%04x", tap_handles->handle); + handle = QString("0x%1").arg(tap_handles->handle, 4, 16, QChar('0')); uuid = QString(print_numeric_uuid(&tap_handles->uuid)); uuid_name = QString(print_uuid(&tap_handles->uuid)); diff --git a/ui/qt/bluetooth_device_dialog.cpp b/ui/qt/bluetooth_device_dialog.cpp index 26a8bad881..31d0b189a9 100644 --- a/ui/qt/bluetooth_device_dialog.cpp +++ b/ui/qt/bluetooth_device_dialog.cpp @@ -392,15 +392,13 @@ tap_packet_status BluetoothDeviceDialog::tapPacket(void *tapinfo_ptr, packet_inf return TAP_PACKET_REDRAW; } - if (!tap_device->is_local && tap_device->has_bd_addr) { - bd_addr.sprintf("%02x:%02x:%02x:%02x:%02x:%02x", tap_device->bd_addr[0], tap_device->bd_addr[1], tap_device->bd_addr[2], tap_device->bd_addr[3], tap_device->bd_addr[4], tap_device->bd_addr[5]); - - if (bd_addr != tapinfo->bdAddr) + if (tap_device->has_bd_addr) { + for (int i = 0; i < 6; ++i) + bd_addr += QString("%1:").arg(tap_device->bd_addr[0], 2, 16, QChar('0')); + bd_addr.remove(bd_addr.length() - 1, 1); + if (!tap_device->is_local && bd_addr != tapinfo->bdAddr) return TAP_PACKET_REDRAW; - } - if (tap_device->has_bd_addr) { - bd_addr.sprintf("%02x:%02x:%02x:%02x:%02x:%02x", tap_device->bd_addr[0], tap_device->bd_addr[1], tap_device->bd_addr[2], tap_device->bd_addr[3], tap_device->bd_addr[4], tap_device->bd_addr[5]); manuf = get_ether_name(tap_device->bd_addr); if (manuf) { int pos; @@ -479,7 +477,7 @@ tap_packet_status BluetoothDeviceDialog::tapPacket(void *tapinfo_ptr, packet_inf updateChanges(tableWidget, field, row_number_hci_version, tapinfo->changes, pinfo); item->setText(field); - field = QString("").sprintf("%u", tap_device->data.local_version.hci_revision); + field = QString::number(tap_device->data.local_version.hci_revision); item = tableWidget->item(row_number_hci_revision, column_number_value); saveItemData(item, tap_device, pinfo); updateChanges(tableWidget, field, row_number_hci_revision, tapinfo->changes, pinfo); @@ -497,7 +495,7 @@ tap_packet_status BluetoothDeviceDialog::tapPacket(void *tapinfo_ptr, packet_inf updateChanges(tableWidget, field, row_number_lmp_version, tapinfo->changes, pinfo); item->setText(field); - field = QString("").sprintf("%u", tap_device->data.local_version.lmp_subversion); + field = QString::number(tap_device->data.local_version.lmp_subversion); item = tableWidget->item(row_number_lmp_subversion, column_number_value); saveItemData(item, tap_device, pinfo); updateChanges(tableWidget, field, row_number_lmp_subversion, tapinfo->changes, pinfo); @@ -517,7 +515,7 @@ tap_packet_status BluetoothDeviceDialog::tapPacket(void *tapinfo_ptr, packet_inf updateChanges(tableWidget, field, row_number_lmp_version, tapinfo->changes, pinfo); item->setText(field); - field = QString("").sprintf("%u", tap_device->data.remote_version.lmp_subversion); + field = QString::number(tap_device->data.remote_version.lmp_subversion); item = tableWidget->item(row_number_lmp_subversion, column_number_value); saveItemData(item, tap_device, pinfo); updateChanges(tableWidget, field, row_number_lmp_subversion, tapinfo->changes, pinfo); @@ -531,7 +529,7 @@ tap_packet_status BluetoothDeviceDialog::tapPacket(void *tapinfo_ptr, packet_inf break; case BLUETOOTH_DEVICE_VOICE_SETTING: - field = QString("").sprintf("0x%04x", tap_device->data.voice_setting); + field = QString("%1").arg(tap_device->data.voice_setting, 4, 16, QChar('0')); item = tableWidget->item(row_number_voice_setting, column_number_value); saveItemData(item, tap_device, pinfo); updateChanges(tableWidget, field, row_number_voice_setting, tapinfo->changes, pinfo); @@ -539,7 +537,7 @@ tap_packet_status BluetoothDeviceDialog::tapPacket(void *tapinfo_ptr, packet_inf break; case BLUETOOTH_DEVICE_CLASS_OF_DEVICE: - field = QString("").sprintf("0x%06x", tap_device->data.class_of_device); + field = QString("%1").arg(tap_device->data.class_of_device, 6, 16, QChar('0')); item = tableWidget->item(row_number_class_of_device, column_number_value); saveItemData(item, tap_device, pinfo); updateChanges(tableWidget, field, row_number_class_of_device, tapinfo->changes, pinfo); diff --git a/ui/qt/bluetooth_devices_dialog.cpp b/ui/qt/bluetooth_devices_dialog.cpp index 2a3bb1eff4..d8b556da67 100644 --- a/ui/qt/bluetooth_devices_dialog.cpp +++ b/ui/qt/bluetooth_devices_dialog.cpp @@ -286,7 +286,9 @@ tap_packet_status BluetoothDevicesDialog::tapPacket(void *tapinfo_ptr, packet_in } if (tap_device->has_bd_addr) { - bd_addr.sprintf("%02x:%02x:%02x:%02x:%02x:%02x", tap_device->bd_addr[0], tap_device->bd_addr[1], tap_device->bd_addr[2], tap_device->bd_addr[3], tap_device->bd_addr[4], tap_device->bd_addr[5]); + for (int i = 0; i < 6; ++i) + bd_addr += QString("%1:").arg(tap_device->bd_addr[0], 2, 16, QChar('0')); + bd_addr.remove(bd_addr.length() - 1, 1); manuf = get_ether_name(tap_device->bd_addr); if (manuf) { @@ -353,14 +355,14 @@ tap_packet_status BluetoothDevicesDialog::tapPacket(void *tapinfo_ptr, packet_in if (tap_device->type == BLUETOOTH_DEVICE_LOCAL_VERSION) { item->setText(column_number_hci_version, val_to_str_const(tap_device->data.local_version.hci_version, bthci_evt_hci_version, "Unknown 0x%02x")); - item->setText(column_number_hci_revision, QString("").sprintf("%u", tap_device->data.local_version.hci_revision)); + item->setText(column_number_hci_revision, QString::number(tap_device->data.local_version.hci_revision)); item->setText(column_number_lmp_version, val_to_str_const(tap_device->data.local_version.lmp_version, bthci_evt_lmp_version, "Unknown 0x%02x")); - item->setText(column_number_lmp_subversion, QString("").sprintf("%u", tap_device->data.local_version.lmp_subversion)); + item->setText(column_number_lmp_subversion, QString::number(tap_device->data.local_version.lmp_subversion)); item->setText(column_number_manufacturer, val_to_str_ext_const(tap_device->data.local_version.manufacturer, &bluetooth_company_id_vals_ext, "Unknown 0x%04x")); } if (tap_device->type == BLUETOOTH_DEVICE_REMOTE_VERSION) { item->setText(column_number_lmp_version, val_to_str_const(tap_device->data.remote_version.lmp_version, bthci_evt_lmp_version, "Unknown 0x%02x")); - item->setText(column_number_lmp_subversion, QString("").sprintf("%u", tap_device->data.remote_version.lmp_subversion)); + item->setText(column_number_lmp_subversion, QString::number(tap_device->data.remote_version.lmp_subversion)); item->setText(column_number_manufacturer, val_to_str_ext_const(tap_device->data.remote_version.manufacturer, &bluetooth_company_id_vals_ext, "Unknown 0x%04x")); } diff --git a/ui/qt/bluetooth_hci_summary_dialog.cpp b/ui/qt/bluetooth_hci_summary_dialog.cpp index 59750c91b1..be3e424156 100644 --- a/ui/qt/bluetooth_hci_summary_dialog.cpp +++ b/ui/qt/bluetooth_hci_summary_dialog.cpp @@ -418,7 +418,8 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet } for (int i_item = 0; i_item < main_item->childCount(); i_item +=1) { - if (main_item->child(i_item)->text(column_number_opcode) == QString("").sprintf("0x%04X", tap_hci->ogf << 10 | tap_hci->ocf)) { + if (main_item->child(i_item)->text(column_number_opcode) == + QString("0x%1").arg(tap_hci->ogf << 10 | tap_hci->ocf, 4, 16, QChar('0'))) { item = main_item->child(i_item); if (tap_hci->type == BLUETOOTH_HCI_SUMMARY_VENDOR_OPCODE && tap_hci->name) { item->setText(column_number_name, tap_hci->name); @@ -434,9 +435,10 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet name = tap_hci->name; item->setText(column_number_name, name); - item->setText(column_number_ogf, QString("").sprintf("0x%02X", tap_hci->ogf)); - item->setText(column_number_ocf, QString("").sprintf("0x%04X", tap_hci->ocf)); - item->setText(column_number_opcode, QString("").sprintf("0x%04X", tap_hci->ogf << 10 | tap_hci->ocf)); + item->setText(column_number_ogf, QString("0x%1").arg(tap_hci->ogf, 2, 16, QChar('0'))); + item->setText(column_number_ocf, QString("0x%1").arg(tap_hci->ocf, 4, 16, QChar('0'))); + item->setText(column_number_opcode, + QString("0x%1").arg(tap_hci->ogf << 10 | tap_hci->ocf, 4, 16, QChar('0'))); if (tap_hci->type == BLUETOOTH_HCI_SUMMARY_OPCODE) item->setText(column_number_occurrence, "0"); else @@ -459,11 +461,12 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet frame_item = new QTreeWidgetItem(); frame_item->setText(column_number_name, QString(tr("Frame %1")).arg(pinfo->num)); - frame_item->setText(column_number_ogf, QString("").sprintf("0x%02X", tap_hci->ogf)); - frame_item->setText(column_number_ocf, QString("").sprintf("0x%04X", tap_hci->ocf)); - frame_item->setText(column_number_opcode, QString("").sprintf("0x%04X", tap_hci->ogf << 10 | tap_hci->ocf)); + frame_item->setText(column_number_ogf, QString("0x%1").arg(tap_hci->ogf, 2, 16, QChar('0'))); + frame_item->setText(column_number_ocf, QString("0x%1").arg(tap_hci->ocf, 4, 16, QChar('0'))); + frame_item->setText(column_number_opcode, QString("0x%1") + .arg(tap_hci->ogf << 10 | tap_hci->ocf, 4, 16, QChar('0'))); if (tap_hci->type == BLUETOOTH_HCI_SUMMARY_EVENT_OPCODE) - frame_item->setText(column_number_event, QString("").sprintf("0x%02X", tap_hci->event)); + frame_item->setText(column_number_event, QString("0x%1").arg(tap_hci->event, 2, 16, QChar('0'))); item->addChild(frame_item); item_data = wmem_new(wmem_file_scope(), bluetooth_item_data_t); @@ -478,7 +481,8 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet main_item = dialog->item_events_; for (int i_item = 0; i_item < main_item->childCount(); i_item +=1) { - if (main_item->child(i_item)->text(column_number_event) == QString("").sprintf("0x%02X", tap_hci->event)) { + if (main_item->child(i_item)->text(column_number_event) == + QString("0x%1").arg(tap_hci->event, 2, 16, QChar('0'))) { item = main_item->child(i_item); if (tap_hci->type == BLUETOOTH_HCI_SUMMARY_VENDOR_EVENT && tap_hci->name) item->setText(column_number_name, tap_hci->name); @@ -492,7 +496,7 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet name = tap_hci->name; item->setText(column_number_name, name); - item->setText(column_number_event, QString("").sprintf("0x%02X", tap_hci->event)); + item->setText(column_number_event, QString("0x%1").arg(tap_hci->event, 2, 16, QChar('0'))); item->setText(column_number_occurrence, QString::number(0)); main_item->addChild(item); @@ -530,7 +534,7 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet frame_item = new QTreeWidgetItem(); frame_item->setText(column_number_name, QString(tr("Frame %1")).arg(pinfo->num)); - frame_item->setText(column_number_event, QString("").sprintf("0x%02X", tap_hci->event)); + frame_item->setText(column_number_event, QString("0x%1").arg(tap_hci->event, 2, 16, QChar('0'))); item->addChild(frame_item); item_data = wmem_new(wmem_file_scope(), bluetooth_item_data_t); @@ -546,8 +550,10 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet meta_item = NULL; for (int i_item = 0; i_item < main_item->childCount(); i_item +=1) { - if (main_item->child(i_item)->text(column_number_event) != QString("").sprintf("0x%02X", tap_hci->event)) + if (main_item->child(i_item)->text(column_number_event) != + QString("0x%1").arg(tap_hci->event, 2, 16, QChar('0'))) { continue; + } meta_item = main_item->child(i_item); break; @@ -559,8 +565,10 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet item = NULL; for (int i_item = 0; i_item < meta_item->childCount(); i_item +=1) { - if (meta_item->child(i_item)->text(column_number_subevent) != QString("").sprintf("0x%02X", tap_hci->subevent)) + if (meta_item->child(i_item)->text(column_number_subevent) != + QString("0x%1").arg(tap_hci->subevent, 2, 16, QChar('0'))) { continue; + } item = meta_item->child(i_item); item->setText(column_number_occurrence, QString::number(item->text(column_number_occurrence).toInt() + 1)); @@ -571,7 +579,7 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet if (item == NULL) { item = new QTreeWidgetItem(); item->setText(column_number_name, tap_hci->name); - item->setText(column_number_subevent, QString("").sprintf("0x%02X", tap_hci->subevent)); + item->setText(column_number_subevent, QString("0x%1").arg(tap_hci->subevent, 2, 16, QChar('0'))); item->setText(column_number_occurrence, QString::number(1)); meta_item->addChild(item); @@ -581,8 +589,8 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet frame_item = new QTreeWidgetItem(); frame_item->setText(column_number_name, QString(tr("Frame %1")).arg(pinfo->num)); - frame_item->setText(column_number_event, QString("").sprintf("0x%02X", tap_hci->event)); - frame_item->setText(column_number_subevent, QString("").sprintf("0x%02X", tap_hci->subevent)); + frame_item->setText(column_number_event, QString("0x%1").arg(tap_hci->event, 2, 16, QChar('0'))); + frame_item->setText(column_number_subevent, QString("0x%1").arg(tap_hci->subevent, 2, 16, QChar('0'))); item_data = wmem_new(wmem_file_scope(), bluetooth_item_data_t); item_data->interface_id = tap_hci->interface_id; @@ -620,7 +628,8 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet main_item = dialog->item_status_; for (int i_item = 0; i_item < main_item->childCount(); i_item +=1) { - if (main_item->child(i_item)->text(column_number_status) == QString("").sprintf("0x%02X", tap_hci->status)) { + if (main_item->child(i_item)->text(column_number_status) == + QString("0x%1").arg(tap_hci->status, 2, 16, QChar('0'))) { item = main_item->child(i_item); break; } @@ -632,7 +641,7 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet item = new QTreeWidgetItem(); item->setText(column_number_name, name); - item->setText(column_number_status, QString("").sprintf("0x%02X", tap_hci->status)); + item->setText(column_number_status, QString("0x%1").arg(tap_hci->status, 2, 16, QChar('0'))); main_item->addChild(item); item->setHidden(!name.contains(dialog->ui->resultsFilterLineEdit->text(), Qt::CaseInsensitive)); @@ -644,7 +653,7 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet frame_item = new QTreeWidgetItem(); frame_item->setText(column_number_name, QString(tr("Frame %1")).arg(pinfo->num)); - frame_item->setText(column_number_status, QString("").sprintf("0x%02X", tap_hci->status)); + frame_item->setText(column_number_status, QString("0x%1").arg(tap_hci->status, 2, 16, QChar('0'))); item->addChild(frame_item); item_data = wmem_new(wmem_file_scope(), bluetooth_item_data_t); @@ -658,7 +667,7 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet main_item = dialog->item_status_; for (int i_item = 0; i_item < main_item->childCount(); i_item +=1) { - if (main_item->child(i_item)->text(column_number_status) == QString("").sprintf("%u", tap_hci->status)) { + if (main_item->child(i_item)->text(column_number_status) == QString::number(tap_hci->status)) { item = main_item->child(i_item); break; } @@ -667,7 +676,7 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet if (!item) { item = new QTreeWidgetItem(); item->setText(column_number_name, tr("Pending")); - item->setText(column_number_status, QString("").sprintf("%u", tap_hci->status)); + item->setText(column_number_status, QString::number(tap_hci->status)); main_item->addChild(item); item->setHidden(!name.contains(dialog->ui->resultsFilterLineEdit->text(), Qt::CaseInsensitive)); @@ -679,7 +688,7 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet frame_item = new QTreeWidgetItem(); frame_item->setText(column_number_name, QString(tr("Frame %1")).arg(pinfo->num)); - frame_item->setText(column_number_status, QString("").sprintf("%u", tap_hci->status)); + frame_item->setText(column_number_status, QString::number(tap_hci->status)); item->addChild(frame_item); item_data = wmem_new(wmem_file_scope(), bluetooth_item_data_t); @@ -693,7 +702,8 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet main_item = dialog->item_reason_; for (int i_item = 0; i_item < main_item->childCount(); i_item +=1) { - if (main_item->child(i_item)->text(column_number_reason) == QString("").sprintf("0x%02X", tap_hci->reason)) { + if (main_item->child(i_item)->text(column_number_reason) == + QString("0x%1").arg(tap_hci->reason, 2, 16, QChar('0'))) { item = main_item->child(i_item); break; } @@ -705,7 +715,7 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet item = new QTreeWidgetItem(); item->setText(column_number_name, name); - item->setText(column_number_reason, QString("").sprintf("0x%02X", tap_hci->reason)); + item->setText(column_number_reason, QString("0x%1").arg(tap_hci->reason, 2, 16, QChar('0'))); main_item->addChild(item); item->setHidden(!name.contains(dialog->ui->resultsFilterLineEdit->text(), Qt::CaseInsensitive)); @@ -717,7 +727,7 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet frame_item = new QTreeWidgetItem(); frame_item->setText(column_number_name, QString(tr("Frame %1")).arg(pinfo->num)); - frame_item->setText(column_number_reason, QString("").sprintf("0x%02X", tap_hci->reason)); + frame_item->setText(column_number_reason, QString("0x%1").arg(tap_hci->reason, 2, 16, QChar('0'))); item->addChild(frame_item); item_data = wmem_new(wmem_file_scope(), bluetooth_item_data_t); @@ -731,7 +741,8 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet main_item = dialog->item_hardware_errors_; for (int i_item = 0; i_item < main_item->childCount(); i_item +=1) { - if (main_item->child(i_item)->text(column_number_hardware_error) == QString("").sprintf("0x%02X", tap_hci->hardware_error)) { + if (main_item->child(i_item)->text(column_number_hardware_error) == + QString("0x%1").arg(tap_hci->hardware_error, 2, 16, QChar('0'))) { item = main_item->child(i_item); break; } @@ -739,8 +750,9 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet if (!item) { item = new QTreeWidgetItem(); - item->setText(column_number_name, QString("").sprintf("Hardware error 0x%02X", tap_hci->hardware_error)); - item->setText(column_number_hardware_error, QString("").sprintf("0x%02X", tap_hci->hardware_error)); + const QString error = QString("0x%1").arg(tap_hci->hardware_error, 2, 16, QChar('0')); + item->setText(column_number_name, QString("Hardware error %1").arg(error)); + item->setText(column_number_hardware_error, error); main_item->addChild(item); item->setHidden(!name.contains(dialog->ui->resultsFilterLineEdit->text(), Qt::CaseInsensitive)); @@ -752,7 +764,7 @@ tap_packet_status BluetoothHciSummaryDialog::tapPacket(void *tapinfo_ptr, packet frame_item = new QTreeWidgetItem(); frame_item->setText(column_number_name, QString(tr("Frame %1")).arg(pinfo->num)); - frame_item->setText(column_number_hardware_error, QString("").sprintf("0x%02X", tap_hci->hardware_error)); + frame_item->setText(column_number_hardware_error, QString("0x%1").arg(tap_hci->hardware_error, 2, 16, QChar('0'))); item->addChild(frame_item); item_data = wmem_new(wmem_file_scope(), bluetooth_item_data_t); diff --git a/ui/qt/capture_file_dialog.cpp b/ui/qt/capture_file_dialog.cpp index ce929115a7..51a7a6dc36 100644 --- a/ui/qt/capture_file_dialog.cpp +++ b/ui/qt/capture_file_dialog.cpp @@ -922,15 +922,13 @@ void CaptureFileDialog::preview(const QString & path) ti_tm = localtime(&ti_time); first_elapsed = "?"; if (ti_tm) { - first_elapsed = QString().sprintf( - "%04d-%02d-%02d %02d:%02d:%02d", - ti_tm->tm_year + 1900, - ti_tm->tm_mon + 1, - ti_tm->tm_mday, - ti_tm->tm_hour, - ti_tm->tm_min, - ti_tm->tm_sec - ); + first_elapsed = QString("%1-%2-%3 %4:%5:%6") + .arg(ti_tm->tm_year + 1900, 4, QChar('0')) + .arg(ti_tm->tm_mon + 1, 2, QChar('0')) + .arg(ti_tm->tm_mday, 2, QChar('0')) + .arg(ti_tm->tm_hour, 2, QChar('0')) + .arg(ti_tm->tm_min, 2, QChar('0')) + .arg(ti_tm->tm_sec, 2, QChar('0')); } } else { first_elapsed = tr("unknown"); @@ -949,12 +947,13 @@ void CaptureFileDialog::preview(const QString & path) // elapsed_time = (unsigned int)(stats.stop_time-stats.start_time); if (elapsed_time/86400) { - first_elapsed += QString().sprintf("%02u days %02u:%02u:%02u", - elapsed_time/86400, elapsed_time%86400/3600, elapsed_time%3600/60, elapsed_time%60); - } else { - first_elapsed += QString().sprintf("%02u:%02u:%02u", - elapsed_time%86400/3600, elapsed_time%3600/60, elapsed_time%60); + first_elapsed += QString("%1 days ").arg(elapsed_time/86400, 2, QChar('0')); + elapsed_time = elapsed_time % 86400; } + first_elapsed += QString("%2:%3:%4") + .arg(elapsed_time%86400/3600, 2, QChar('0')) + .arg(elapsed_time%3600/60, 2, QChar('0')) + .arg(elapsed_time%60, 2, QChar('0')); } else { first_elapsed += tr("unknown"); } diff --git a/ui/qt/capture_filter_syntax_worker.cpp b/ui/qt/capture_filter_syntax_worker.cpp index 03fc52ed76..cc8c77f600 100644 --- a/ui/qt/capture_filter_syntax_worker.cpp +++ b/ui/qt/capture_filter_syntax_worker.cpp @@ -91,7 +91,7 @@ void CaptureFilterSyntaxWorker::start() { } } - foreach (gint dlt, active_dlts.toList()) { + foreach (gint dlt, active_dlts.values()) { pcap_compile_mtx_.lock(); pd = pcap_open_dead(dlt, DUMMY_SNAPLENGTH); if (pd == NULL) @@ -124,7 +124,7 @@ void CaptureFilterSyntaxWorker::start() { } // If it's already invalid, don't bother to check extcap if (state != SyntaxLineEdit::Invalid) { - foreach (guint extcapif, active_extcap.toList()) { + foreach (guint extcapif, active_extcap.values()) { interface_t *device; gchar *error = NULL; diff --git a/ui/qt/capture_info_dialog.cpp b/ui/qt/capture_info_dialog.cpp index 8beffdee67..e9c32838fb 100644 --- a/ui/qt/capture_info_dialog.cpp +++ b/ui/qt/capture_info_dialog.cpp @@ -113,7 +113,7 @@ CaptureInfoDialog::~CaptureInfoDialog() void CaptureInfoDialog::updateInfo() { - int secs = duration_.elapsed() / 1000; + int secs = int(duration_.elapsed() / 1000); QString duration = tr("%1 packets, %2:%3:%4") .arg(cap_info_->counts->total) .arg(secs / 3600, 2, 10, QChar('0')) diff --git a/ui/qt/capture_info_dialog.h b/ui/qt/capture_info_dialog.h index c2681f82c8..cce440989f 100644 --- a/ui/qt/capture_info_dialog.h +++ b/ui/qt/capture_info_dialog.h @@ -13,7 +13,7 @@ #include "geometry_state_dialog.h" #include <QAbstractTableModel> -#include <QTime> +#include <QElapsedTimer> struct _capture_info; struct _capture_session; @@ -66,7 +66,7 @@ private: struct _capture_info *cap_info_; struct _capture_session *cap_session_; CaptureInfoModel *ci_model_; - QTime duration_; + QElapsedTimer duration_; }; #endif // CAPTURE_INFO_DIALOG_H diff --git a/ui/qt/credentials_dialog.cpp b/ui/qt/credentials_dialog.cpp index c7d98d9cf6..6402e33a30 100644 --- a/ui/qt/credentials_dialog.cpp +++ b/ui/qt/credentials_dialog.cpp @@ -104,7 +104,7 @@ void CredentialsDialog::actionGoToPacket(const QModelIndex& idx) QVariant packet_data = idx.data(Qt::UserRole); QVariant hf_id = idx.data(CredentialsModel::ColumnHFID); if (!hf_id.canConvert(QVariant::Int)) - hf_id = qVariantFromValue(0); + hf_id = QVariant::fromValue(0); if (packet_data.canConvert(QVariant::Int)) packet_list_->goToPacket(packet_data.toInt(), hf_id.toInt()); diff --git a/ui/qt/enabled_protocols_dialog.cpp b/ui/qt/enabled_protocols_dialog.cpp index 5eb9abbc84..1579a78b35 100644 --- a/ui/qt/enabled_protocols_dialog.cpp +++ b/ui/qt/enabled_protocols_dialog.cpp @@ -35,15 +35,15 @@ EnabledProtocolsDialog::EnabledProtocolsDialog(QWidget *parent) : int one_em = ui->protocol_tree_->fontMetrics().height(); ui->protocol_tree_->setColumnWidth(EnabledProtocolsModel::colProtocol, one_em * 18); - ui->cmbSearchType->addItem(tr("Everywhere"), qVariantFromValue(EnabledProtocolsProxyModel::EveryWhere)); - ui->cmbSearchType->addItem(tr("Only Protocols"), qVariantFromValue(EnabledProtocolsProxyModel::OnlyProtocol)); - ui->cmbSearchType->addItem(tr("Only Description"), qVariantFromValue(EnabledProtocolsProxyModel::OnlyDescription)); - ui->cmbSearchType->addItem(tr("Only enabled protocols"), qVariantFromValue(EnabledProtocolsProxyModel::EnabledItems)); - ui->cmbSearchType->addItem(tr("Only disabled protocols"), qVariantFromValue(EnabledProtocolsProxyModel::DisabledItems)); - - ui->cmbProtocolType->addItem(tr("any protocol"), qVariantFromValue(EnabledProtocolItem::Any)); - ui->cmbProtocolType->addItem(tr("non-heuristic protocols"), qVariantFromValue(EnabledProtocolItem::Standard)); - ui->cmbProtocolType->addItem(tr("heuristic protocols"), qVariantFromValue(EnabledProtocolItem::Heuristic)); + ui->cmbSearchType->addItem(tr("Everywhere"), QVariant::fromValue(EnabledProtocolsProxyModel::EveryWhere)); + ui->cmbSearchType->addItem(tr("Only Protocols"), QVariant::fromValue(EnabledProtocolsProxyModel::OnlyProtocol)); + ui->cmbSearchType->addItem(tr("Only Description"), QVariant::fromValue(EnabledProtocolsProxyModel::OnlyDescription)); + ui->cmbSearchType->addItem(tr("Only enabled protocols"), QVariant::fromValue(EnabledProtocolsProxyModel::EnabledItems)); + ui->cmbSearchType->addItem(tr("Only disabled protocols"), QVariant::fromValue(EnabledProtocolsProxyModel::DisabledItems)); + + ui->cmbProtocolType->addItem(tr("any protocol"), QVariant::fromValue(EnabledProtocolItem::Any)); + ui->cmbProtocolType->addItem(tr("non-heuristic protocols"), QVariant::fromValue(EnabledProtocolItem::Standard)); + ui->cmbProtocolType->addItem(tr("heuristic protocols"), QVariant::fromValue(EnabledProtocolItem::Heuristic)); fillTree(); } diff --git a/ui/qt/filter_action.cpp b/ui/qt/filter_action.cpp index a03b44c63f..4da3ae8da3 100644 --- a/ui/qt/filter_action.cpp +++ b/ui/qt/filter_action.cpp @@ -265,7 +265,7 @@ QAction * FilterAction::copyFilterAction(QString filter, QWidget *par) { FilterAction * filterAction = new FilterAction(par, ActionCopy); QAction * action = new QAction(QObject::tr("Copy"), par); - action->setProperty("filter", qVariantFromValue(filter)); + action->setProperty("filter", QVariant::fromValue(filter)); connect(action, &QAction::triggered, filterAction, &FilterAction::copyActionTriggered); if (filter.isEmpty()) diff --git a/ui/qt/lte_mac_statistics_dialog.cpp b/ui/qt/lte_mac_statistics_dialog.cpp index b356364d28..ef724b522e 100644 --- a/ui/qt/lte_mac_statistics_dialog.cpp +++ b/ui/qt/lte_mac_statistics_dialog.cpp @@ -125,7 +125,7 @@ public: // N.B. fields that are set as % using percent_bar_delegate.h // for UE headings don't display here... for (int n=0; n < 11; n++) { - setText(col_type_+n, QString("").sprintf("%u", lcids[n])); + setText(col_type_+n, QString::number((uint)lcids[n])); } } diff --git a/ui/qt/main_status_bar.cpp b/ui/qt/main_status_bar.cpp index d921d20884..2a0a7157c8 100644 --- a/ui/qt/main_status_bar.cpp +++ b/ui/qt/main_status_bar.cpp @@ -60,7 +60,11 @@ statusbar_push_temporary_msg(const gchar *msg_format, ...) if (!cur_main_status_bar_) return; va_start(ap, msg_format); +#if QT_VERSION >= QT_VERSION_CHECK(5, 5, 0) + push_msg = QString::vasprintf(msg_format, ap); +#else push_msg.vsprintf(msg_format, ap); +#endif va_end(ap); wsApp->pushStatus(WiresharkApplication::TemporaryStatus, push_msg); diff --git a/ui/qt/main_window_slots.cpp b/ui/qt/main_window_slots.cpp index f1c20fffd0..589dc32995 100644 --- a/ui/qt/main_window_slots.cpp +++ b/ui/qt/main_window_slots.cpp @@ -879,8 +879,10 @@ void MainWindow::startCapture() { g_string_append(interface_names, " "); wsApp->popStatus(WiresharkApplication::FileStatus); - QString msg = QString().sprintf("%s<live capture in progress>", interface_names->str); - QString msgtip = QString().sprintf("to file: %s", (capture_opts->save_file) ? capture_opts->save_file : ""); + QString msg = QString("%1<live capture in progress>").arg(interface_names->str); + QString msgtip = QString("to file: "); + if (capture_opts->save_file) + msgtip += capture_opts->save_file; wsApp->pushStatus(WiresharkApplication::FileStatus, msg, msgtip); g_string_free(interface_names, TRUE); diff --git a/ui/qt/models/coloring_rules_model.cpp b/ui/qt/models/coloring_rules_model.cpp index 6651f43374..566ecd1601 100644 --- a/ui/qt/models/coloring_rules_model.cpp +++ b/ui/qt/models/coloring_rules_model.cpp @@ -422,8 +422,8 @@ QMimeData* ColoringRulesModel::mimeData(const QModelIndexList &indexes) const entry["disabled"] = item->disabled_; entry["name"] = item->name_; entry["filter"] = item->filter_; - entry["foreground"] = qVariantFromValue(item->foreground_).toString(); - entry["background"] = qVariantFromValue(item->background_).toString(); + entry["foreground"] = QVariant::fromValue(item->foreground_).toString(); + entry["background"] = QVariant::fromValue(item->background_).toString(); data.append(entry); } } diff --git a/ui/qt/models/column_list_model.cpp b/ui/qt/models/column_list_model.cpp index c08e40b7af..1218a1effe 100644 --- a/ui/qt/models/column_list_model.cpp +++ b/ui/qt/models/column_list_model.cpp @@ -289,7 +289,7 @@ QVariant ColumnListModel::data(const QModelIndex &index, int role) const case ColumnListModel::COL_FIELDS: return ne.customFields; case ColumnListModel::COL_OCCURRENCE: - return ne.customFields.length() > 0 ? qVariantFromValue(ne.occurrence) : QVariant(); + return ne.customFields.length() > 0 ? QVariant::fromValue(ne.occurrence) : QVariant(); } } else if (role == Qt::CheckStateRole) @@ -300,9 +300,9 @@ QVariant ColumnListModel::data(const QModelIndex &index, int role) const } } else if (role == OriginalType) - return qVariantFromValue(ne.originalType); + return QVariant::fromValue(ne.originalType); else if (role == DisplayedState) - return qVariantFromValue(ne.displayed); + return QVariant::fromValue(ne.displayed); return QVariant(); } diff --git a/ui/qt/models/credentials_model.cpp b/ui/qt/models/credentials_model.cpp index 23c1e48dd0..c6daf5cbc9 100644 --- a/ui/qt/models/credentials_model.cpp +++ b/ui/qt/models/credentials_model.cpp @@ -44,7 +44,7 @@ QVariant CredentialsModel::data(const QModelIndex &index, int role) const if (role == Qt::DisplayRole) { switch (index.column()) { case COL_NUM: - return qVariantFromValue(auth->num); + return QVariant::fromValue(auth->num); case COL_PROTO: return QString(auth->proto); case COL_USERNAME: @@ -60,11 +60,11 @@ QVariant CredentialsModel::data(const QModelIndex &index, int role) const switch (index.column()) { case COL_NUM: if (auth->num > 0) - return qVariantFromValue(auth->num); + return QVariant::fromValue(auth->num); break; case COL_USERNAME: if (auth->username_num > 0) - return qVariantFromValue(auth->username_num); + return QVariant::fromValue(auth->username_num); break; default: return QVariant(); @@ -72,7 +72,7 @@ QVariant CredentialsModel::data(const QModelIndex &index, int role) const } if (role == CredentialsModel::ColumnHFID) - return qVariantFromValue(auth->password_hf_id); + return QVariant::fromValue(auth->password_hf_id); if (role == Qt::ToolTipRole) { const QString select_msg(tr("Click to select the packet")); diff --git a/ui/qt/models/decode_as_delegate.cpp b/ui/qt/models/decode_as_delegate.cpp index 4cbcbd111e..acc1aa4aec 100644 --- a/ui/qt/models/decode_as_delegate.cpp +++ b/ui/qt/models/decode_as_delegate.cpp @@ -159,7 +159,7 @@ QWidget* DecodeAsDelegate::createEditor(QWidget *parentWidget, const QStyleOptio } //put the rest of the protocols in the combo box - QList<QString> da_list = da_set.toList(); + QList<QString> da_list = da_set.values(); std::sort(da_list.begin(), da_list.end()); foreach (table_ui_name, da_list) { diff --git a/ui/qt/models/enabled_protocols_model.cpp b/ui/qt/models/enabled_protocols_model.cpp index d63c56ca57..6c0ed9ee36 100644 --- a/ui/qt/models/enabled_protocols_model.cpp +++ b/ui/qt/models/enabled_protocols_model.cpp @@ -236,7 +236,7 @@ QVariant EnabledProtocolsModel::data(const QModelIndex &index, int role) const } break; case DATA_PROTOCOL_TYPE: - return qVariantFromValue(item->type()); + return QVariant::fromValue(item->type()); break; default: break; @@ -500,7 +500,7 @@ void EnabledProtocolsProxyModel::setItemsEnable(EnabledProtocolsProxyModel::Enab else enable = enable == Qt::Checked ? Qt::Unchecked : Qt::Checked; - sourceModel()->setData(mapToSource(idx), qVariantFromValue(enable), Qt::CheckStateRole); + sourceModel()->setData(mapToSource(idx), QVariant::fromValue(enable), Qt::CheckStateRole); } } diff --git a/ui/qt/models/packet_list_model.cpp b/ui/qt/models/packet_list_model.cpp index 3bd0cfd4f6..2d666f49ef 100644 --- a/ui/qt/models/packet_list_model.cpp +++ b/ui/qt/models/packet_list_model.cpp @@ -645,9 +645,9 @@ QVariant PacketListModel::headerData(int section, Qt::Orientation orientation, if (orientation == Qt::Horizontal && section < prefs.num_cols) { switch (role) { case Qt::DisplayRole: - return qVariantFromValue(QString(get_column_title(section))); + return QVariant::fromValue(QString(get_column_title(section))); case Qt::ToolTipRole: - return qVariantFromValue(gchar_free_to_qstring(get_column_tooltip(section))); + return QVariant::fromValue(gchar_free_to_qstring(get_column_tooltip(section))); default: break; } diff --git a/ui/qt/models/profile_model.cpp b/ui/qt/models/profile_model.cpp index 1e40afa23b..ae6284d0b8 100644 --- a/ui/qt/models/profile_model.cpp +++ b/ui/qt/models/profile_model.cpp @@ -587,11 +587,11 @@ QVariant ProfileModel::data(const QModelIndex &index, int role) const case Qt::ToolTipRole: return dataToolTipRole(index); case ProfileModel::DATA_STATUS: - return qVariantFromValue(prof->status); + return QVariant::fromValue(prof->status); case ProfileModel::DATA_IS_DEFAULT: - return qVariantFromValue(prof->status == PROF_STAT_DEFAULT); + return QVariant::fromValue(prof->status == PROF_STAT_DEFAULT); case ProfileModel::DATA_IS_GLOBAL: - return qVariantFromValue(prof->is_global); + return QVariant::fromValue(prof->is_global); case ProfileModel::DATA_IS_SELECTED: { QModelIndex selected = activeProfile(); @@ -599,26 +599,26 @@ QVariant ProfileModel::data(const QModelIndex &index, int role) const if (selprof) { if (selprof && selprof->is_global != prof->is_global) - return qVariantFromValue(false); + return QVariant::fromValue(false); if (selprof && strcmp(selprof->name, prof->name) == 0) - return qVariantFromValue(true); + return QVariant::fromValue(true); } - return qVariantFromValue(false); + return QVariant::fromValue(false); } case ProfileModel::DATA_PATH: return dataPath(index); case ProfileModel::DATA_INDEX_VALUE_IS_URL: if (index.column() <= ProfileModel::COL_TYPE) - return qVariantFromValue(false); - return qVariantFromValue(true); + return QVariant::fromValue(false); + return QVariant::fromValue(true); case ProfileModel::DATA_PATH_IS_NOT_DESCRIPTION: if (prof->status == PROF_STAT_NEW || prof->status == PROF_STAT_COPY || (prof->status == PROF_STAT_DEFAULT && reset_default_) || prof->status == PROF_STAT_CHANGED || prof->is_import) - return qVariantFromValue(false); + return QVariant::fromValue(false); else - return qVariantFromValue(true); + return QVariant::fromValue(true); default: break; diff --git a/ui/qt/proto_tree.cpp b/ui/qt/proto_tree.cpp index b4aa2802bb..5c46b354c2 100644 --- a/ui/qt/proto_tree.cpp +++ b/ui/qt/proto_tree.cpp @@ -311,7 +311,7 @@ void ProtoTree::contextMenuEvent(QContextMenuEvent *event) submenu = ctx_menu.addMenu(tr("Copy")); submenu->addAction(tr("All Visible Items"), this, SLOT(ctxCopyVisibleItems())); action = submenu->addAction(tr("All Visible Selected Tree Items"), this, SLOT(ctxCopyVisibleItems())); - action->setProperty("selected_tree", qVariantFromValue(true)); + action->setProperty("selected_tree", QVariant::fromValue(true)); action = submenu->addAction(tr("Description"), this, SLOT(ctxCopySelectedInfo())); action->setProperty("field_type", ProtoTree::Description); action = submenu->addAction(tr("Field Name"), this, SLOT(ctxCopySelectedInfo())); @@ -336,7 +336,7 @@ void ProtoTree::contextMenuEvent(QContextMenuEvent *event) ctx_menu.addAction(tr("Wiki Protocol Page"), this, SLOT(ctxOpenUrlWiki())); action = ctx_menu.addAction(tr("Filter Field Reference"), this, SLOT(ctxOpenUrlWiki())); - action->setProperty("field_reference", qVariantFromValue(true)); + action->setProperty("field_reference", QVariant::fromValue(true)); ctx_menu.addMenu(&proto_prefs_menu_); ctx_menu.addSeparator(); decode_as_ = window()->findChild<QAction *>("actionAnalyzeDecodeAs"); diff --git a/ui/qt/rtp_audio_stream.cpp b/ui/qt/rtp_audio_stream.cpp index 8b50783927..fc04257bc0 100644 --- a/ui/qt/rtp_audio_stream.cpp +++ b/ui/qt/rtp_audio_stream.cpp @@ -390,7 +390,7 @@ void RtpAudioStream::decode() const QStringList RtpAudioStream::payloadNames() const { - QStringList payload_names = payload_names_.toList(); + QStringList payload_names = payload_names_.values(); payload_names.sort(); return payload_names; } diff --git a/ui/qt/widgets/label_stack.h b/ui/qt/widgets/label_stack.h index da45742037..e9e64575c9 100644 --- a/ui/qt/widgets/label_stack.h +++ b/ui/qt/widgets/label_stack.h @@ -12,7 +12,7 @@ #include <QLabel> #include <QStack> -#include <QTime> +#include <QElapsedTimer> #include <QTimer> class LabelStack : public QLabel @@ -41,7 +41,7 @@ private: int temporary_ctx_; QList<StackItem> labels_; bool shrinkable_; - QTime temporary_epoch_; + QElapsedTimer temporary_epoch_; QTimer temporary_timer_; void fillLabel(); diff --git a/ui/qt/widgets/packet_list_header.cpp b/ui/qt/widgets/packet_list_header.cpp index 79f27b23fc..a1c3d1b0ec 100644 --- a/ui/qt/widgets/packet_list_header.cpp +++ b/ui/qt/widgets/packet_list_header.cpp @@ -164,23 +164,23 @@ void PacketListHeader::contextMenuEvent(QContextMenuEvent *event) char xalign = recent_get_column_xalign(sectionIdx); QAction * action = Q_NULLPTR; QMenu * contextMenu = new QMenu(this); - contextMenu->setProperty("column", qVariantFromValue(sectionIdx)); + contextMenu->setProperty("column", QVariant::fromValue(sectionIdx)); QActionGroup * alignmentActions = new QActionGroup(contextMenu); alignmentActions->setExclusive(false); - alignmentActions->setProperty("column", qVariantFromValue(sectionIdx)); + alignmentActions->setProperty("column", QVariant::fromValue(sectionIdx)); action = alignmentActions->addAction(tr("Align Left")); action->setCheckable(true); action->setChecked(xalign == COLUMN_XALIGN_LEFT ? true : false); - action->setData(qVariantFromValue(COLUMN_XALIGN_LEFT)); + action->setData(QVariant::fromValue(COLUMN_XALIGN_LEFT)); action = alignmentActions->addAction(tr("Align Center")); action->setCheckable(true); action->setChecked(xalign == COLUMN_XALIGN_CENTER ? true : false); - action->setData(qVariantFromValue(COLUMN_XALIGN_CENTER)); + action->setData(QVariant::fromValue(COLUMN_XALIGN_CENTER)); action = alignmentActions->addAction(tr("Align Right")); action->setCheckable(true); action->setChecked(xalign == COLUMN_XALIGN_RIGHT ? true : false); - action->setData(qVariantFromValue(COLUMN_XALIGN_RIGHT)); + action->setData(QVariant::fromValue(COLUMN_XALIGN_RIGHT)); connect(alignmentActions, &QActionGroup::triggered, this, &PacketListHeader::setAlignment); contextMenu->addActions(alignmentActions->actions()); diff --git a/ui/qt/widgets/qcustomplot.cpp b/ui/qt/widgets/qcustomplot.cpp index 4323165332..cc29e1db5b 100644 --- a/ui/qt/widgets/qcustomplot.cpp +++ b/ui/qt/widgets/qcustomplot.cpp @@ -1094,8 +1094,8 @@ void QCPLayer::setMode(QCPLayer::LayerMode mode) if (mMode != mode) { mMode = mode; - if (!mPaintBuffer.isNull()) - mPaintBuffer.data()->setInvalidated(); + if (QSharedPointer<QCPAbstractPaintBuffer> paintBuf = mPaintBuffer.toStrongRef()) + paintBuf->setInvalidated(); } } @@ -1130,16 +1130,16 @@ void QCPLayer::draw(QCPPainter *painter) */ void QCPLayer::drawToPaintBuffer() { - if (!mPaintBuffer.isNull()) + if (QSharedPointer<QCPAbstractPaintBuffer> paintBuf = mPaintBuffer.toStrongRef()) { - if (QCPPainter *painter = mPaintBuffer.data()->startPainting()) + if (QCPPainter *painter = paintBuf->startPainting()) { if (painter->isActive()) draw(painter); else qDebug() << Q_FUNC_INFO << "paint buffer returned inactive painter"; delete painter; - mPaintBuffer.data()->donePainting(); + paintBuf->donePainting(); } else qDebug() << Q_FUNC_INFO << "paint buffer returned zero painter"; } else @@ -1163,11 +1163,11 @@ void QCPLayer::replot() { if (mMode == lmBuffered && !mParentPlot->hasInvalidatedPaintBuffers()) { - if (!mPaintBuffer.isNull()) + if (QSharedPointer<QCPAbstractPaintBuffer> paintBuf = mPaintBuffer.toStrongRef()) { - mPaintBuffer.data()->clear(Qt::transparent); + paintBuf->clear(Qt::transparent); drawToPaintBuffer(); - mPaintBuffer.data()->setInvalidated(false); + paintBuf->setInvalidated(false); mParentPlot->update(); } else qDebug() << Q_FUNC_INFO << "no valid paint buffer associated with this layer"; @@ -1193,8 +1193,8 @@ void QCPLayer::addChild(QCPLayerable *layerable, bool prepend) mChildren.prepend(layerable); else mChildren.append(layerable); - if (!mPaintBuffer.isNull()) - mPaintBuffer.data()->setInvalidated(); + if (QSharedPointer<QCPAbstractPaintBuffer> paintBuf = mPaintBuffer.toStrongRef()) + paintBuf->setInvalidated(); } else qDebug() << Q_FUNC_INFO << "layerable is already child of this layer" << reinterpret_cast<quintptr>(layerable); } @@ -1212,8 +1212,8 @@ void QCPLayer::removeChild(QCPLayerable *layerable) { if (mChildren.removeOne(layerable)) { - if (!mPaintBuffer.isNull()) - mPaintBuffer.data()->setInvalidated(); + if (QSharedPointer<QCPAbstractPaintBuffer> paintBuf = mPaintBuffer.toStrongRef()) + paintBuf->setInvalidated(); } else qDebug() << Q_FUNC_INFO << "layerable is not child of this layer" << reinterpret_cast<quintptr>(layerable); } @@ -11324,12 +11324,12 @@ QCPItemAnchor::QCPItemAnchor(QCustomPlot *parentPlot, QCPAbstractItem *parentIte QCPItemAnchor::~QCPItemAnchor() { // unregister as parent at children: - foreach (QCPItemPosition *child, mChildrenX.toList()) + foreach (QCPItemPosition *child, mChildrenX.values()) { if (child->parentAnchorX() == this) child->setParentAnchorX(0); // this acts back on this anchor and child removes itself from mChildrenX } - foreach (QCPItemPosition *child, mChildrenY.toList()) + foreach (QCPItemPosition *child, mChildrenY.values()) { if (child->parentAnchorY() == this) child->setParentAnchorY(0); // this acts back on this anchor and child removes itself from mChildrenY @@ -11502,12 +11502,12 @@ QCPItemPosition::~QCPItemPosition() // unregister as parent at children: // Note: this is done in ~QCPItemAnchor again, but it's important QCPItemPosition does it itself, because only then // the setParentAnchor(0) call the correct QCPItemPosition::pixelPosition function instead of QCPItemAnchor::pixelPosition - foreach (QCPItemPosition *child, mChildrenX.toList()) + foreach (QCPItemPosition *child, mChildrenX.values()) { if (child->parentAnchorX() == this) child->setParentAnchorX(0); // this acts back on this anchor and child removes itself from mChildrenX } - foreach (QCPItemPosition *child, mChildrenY.toList()) + foreach (QCPItemPosition *child, mChildrenY.values()) { if (child->parentAnchorY() == this) child->setParentAnchorY(0); // this acts back on this anchor and child removes itself from mChildrenY @@ -14123,8 +14123,8 @@ bool QCustomPlot::removeLayer(QCPLayer *layer) if (layer == mCurrentLayer) setCurrentLayer(targetLayer); // invalidate the paint buffer that was responsible for this layer: - if (!layer->mPaintBuffer.isNull()) - layer->mPaintBuffer.data()->setInvalidated(); + if (QSharedPointer<QCPAbstractPaintBuffer> paintBuf = layer->mPaintBuffer.toStrongRef()) + paintBuf->setInvalidated(); // remove layer: delete layer; mLayers.removeOne(layer); @@ -14160,10 +14160,10 @@ bool QCustomPlot::moveLayer(QCPLayer *layer, QCPLayer *otherLayer, QCustomPlot:: mLayers.move(layer->index(), otherLayer->index() + (insertMode==limAbove ? 0:-1)); // invalidate the paint buffers that are responsible for the layers: - if (!layer->mPaintBuffer.isNull()) - layer->mPaintBuffer.data()->setInvalidated(); - if (!otherLayer->mPaintBuffer.isNull()) - otherLayer->mPaintBuffer.data()->setInvalidated(); + if (QSharedPointer<QCPAbstractPaintBuffer> paintBuf = layer->mPaintBuffer.toStrongRef()) + paintBuf->setInvalidated(); + if (QSharedPointer<QCPAbstractPaintBuffer> paintBuf = otherLayer->mPaintBuffer.toStrongRef()) + paintBuf->setInvalidated(); updateLayerIndices(); return true; |