Esempio n. 1
0
void CreateEditPage::storeAndExit(void)
{
	bool success;

	QNdefMessage message = prepareDataForStorage();
	if (message.isEmpty() == true) {
		goto fail;
	}

	if (m_tag == TagStorage::NULL_TAG) {
		success = TagStorage::storage()->append(m_name->contents(), 
							message);
	} else if (m_tag == TagStorage::TEMPORARY_TAG) {
		TagStorage::storage()->remove(TagStorage::TEMPORARY_TAG);
		success = TagStorage::storage()->append(m_name->contents(), 
							message);
	} else {
		success = TagStorage::storage()->update(m_tag,
							m_name->contents(),
							message);
	}

	if (success == false) {
		goto fail;
	}

	dismiss();
	return;

fail:
	MMessageBox *box = new MMessageBox(tr("Cannot store the tag. "));
	box->appear(MSceneWindow::DestroyWhenDismissed);
}