void EditGroupWidget::apply() { m_temporaryGroup->setName(m_mainUi->editName->text()); m_temporaryGroup->setNotes(m_mainUi->editNotes->toPlainText()); m_temporaryGroup->setExpires(m_mainUi->expireCheck->isChecked()); m_temporaryGroup->setExpiryTime(m_mainUi->expireDatePicker->dateTime().toUTC()); m_temporaryGroup->setSearchingEnabled(triStateFromIndex(m_mainUi->searchComboBox->currentIndex())); m_temporaryGroup->setAutoTypeEnabled(triStateFromIndex(m_mainUi->autotypeComboBox->currentIndex())); if (m_mainUi->autoTypeSequenceInherit->isChecked()) { m_temporaryGroup->setDefaultAutoTypeSequence(QString()); } else { m_temporaryGroup->setDefaultAutoTypeSequence(m_mainUi->autoTypeSequenceCustomEdit->text()); } IconStruct iconStruct = m_editGroupWidgetIcons->state(); if (iconStruct.number < 0) { m_temporaryGroup->setIcon(Group::DefaultIconNumber); } else if (iconStruct.uuid.isNull()) { m_temporaryGroup->setIcon(iconStruct.number); } else { m_temporaryGroup->setIcon(iconStruct.uuid); } for (const ExtraPage& page : asConst(m_extraPages)) { page.assign(); } // Icons add/remove are applied globally outside the transaction! m_group->copyDataFrom(m_temporaryGroup.data()); setModified(false); }
void EditGroupWidget::save() { m_group->setName(m_mainUi->editName->text()); m_group->setNotes(m_mainUi->editNotes->toPlainText()); m_group->setExpires(m_mainUi->expireCheck->isChecked()); m_group->setExpiryTime(m_mainUi->expireDatePicker->dateTime().toUTC()); m_group->setSearchingEnabled(triStateFromIndex(m_mainUi->searchComboBox->currentIndex())); m_group->setAutoTypeEnabled(triStateFromIndex(m_mainUi->autotypeComboBox->currentIndex())); IconStruct iconStruct = m_editGroupWidgetIcons->save(); if (iconStruct.number < 0) { m_group->setIcon(Group::DefaultIconNumber); } else if (iconStruct.uuid.isNull()) { m_group->setIcon(iconStruct.number); } else { m_group->setIcon(iconStruct.uuid); } m_group = Q_NULLPTR; m_database = Q_NULLPTR; Q_EMIT editFinished(true); }