MCPcopy Create free account
hub / github.com/KDE/labplot / addModifyKeywordUnit

Method addModifyKeywordUnit

src/frontend/widgets/FITSHeaderEditWidget.cpp:461–499  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

459 */
460
461void FITSHeaderEditWidget::addModifyKeywordUnit() {
462 FITSHeaderEditAddUnitDialog* addUnitDialog;
463
464 const int selectedRow = ui->twKeywordsTable->currentRow();
465 int idx;
466 bool fromNewKeyword = false;
467 if (selectedRow > m_extensionData[m_seletedExtension].keywords.size() - 1) {
468 idx = selectedRow - m_extensionData[m_seletedExtension].keywords.size();
469 fromNewKeyword = true;
470 } else
471 idx = selectedRow;
472
473 QString unit;
474 if (fromNewKeyword) {
475 if (!m_extensionData[m_seletedExtension].updates.newKeywords.at(idx).unit.isEmpty())
476 unit = m_extensionData[m_seletedExtension].updates.newKeywords.at(idx).unit;
477 } else {
478 if (!m_extensionData[m_seletedExtension].keywords.at(idx).unit.isEmpty())
479 unit = m_extensionData[m_seletedExtension].keywords.at(idx).unit;
480 }
481
482 addUnitDialog = new FITSHeaderEditAddUnitDialog(unit);
483 if (addUnitDialog->exec() == QDialog::Accepted) {
484 if (fromNewKeyword) {
485 m_extensionData[m_seletedExtension].updates.newKeywords.operator[](idx).unit = addUnitDialog->unit();
486 if (!m_extensionData[m_seletedExtension].updates.newKeywords.at(idx).unit.isEmpty()) {
487 m_extensionData[m_seletedExtension].updates.newKeywords.operator[](idx).updates.unitUpdated = true;
488 }
489 } else {
490 m_extensionData[m_seletedExtension].keywords.operator[](idx).unit = addUnitDialog->unit();
491 if (!m_extensionData[m_seletedExtension].keywords.at(idx).unit.isEmpty())
492 m_extensionData[m_seletedExtension].keywords.operator[](idx).updates.unitUpdated = true;
493 }
494 Q_EMIT changed(true);
495 fillTable();
496 }
497
498 delete addUnitDialog;
499}
500
501/*!
502 * \brief Removes the selected extension from the extensions treeview

Callers

nothing calls this directly

Calls 5

execMethod · 0.80
operator[]Method · 0.80
unitMethod · 0.80
sizeMethod · 0.45
isEmptyMethod · 0.45

Tested by

no test coverage detected