Exemple #1
0
	void update(QSqlDatabase* db, Tag& tag) {
		QSqlQuery q(*db);
		QSqlRecord r;

		if(!QItem::isExists(db, "tags", "guid", QString::fromStdString(tag.guid), r))
		{
			r = QItem::load(db, "tags", "name", QString::fromUtf8(tag.name.c_str()));
			if(!r.isEmpty())
			{
				tag.name = QItem::resolveConflict(db, r, QString::fromStdString(tag.guid), DELETE_ITEM("tags", "guid", QString::fromStdString(tag.guid)), tag.name);
			}

			q.prepare(INSERT_TAG(tag.guid, tag.name, tag.parentGuid, tag.updateSequenceNum));
		}
		else if(r.value("updateSequenceNum").toInt() < tag.updateSequenceNum)
		{
			qDebug() << r.value("updateSequenceNum").toInt() << r;
			// update tag
			q.prepare(UPDATE_TAG(tag.guid, tag.name, tag.parentGuid, tag.updateSequenceNum));
		}
		else
			return;

		QItem::executeQuery(q);
	}
void TREE_KERNEL::SLOT_DELETE_ITEM()
{
    QTreeWidgetItem * item = m_tree_widget->currentItem();

    QStringList column_datas;
    column_datas = GET_COLUMN_DATAS_FROM_ITEM(item);

    if ( CHECK_DELETE_ITEM( column_datas ) EQ ADAK_OK) {
        DELETE_ITEM( column_datas );
        m_last_deleted_item_parent = item->parent();
        int item_index = m_tree_widget->indexOfTopLevelItem(item);
        m_tree_widget->takeTopLevelItem(item_index);
        delete item;
    }
}
Exemple #3
0
	void remove(QSqlDatabase* db, Guid guid) {
		QSqlQuery q(*db);
		q.prepare(DELETE_ITEM("tags", "guid", guid.c_str()));
		QItem::executeQuery(q);
	}