diff options
Diffstat (limited to 'mappingtreemodel.cpp')
-rw-r--r-- | mappingtreemodel.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/mappingtreemodel.cpp b/mappingtreemodel.cpp index 2790ef7..4f253c5 100644 --- a/mappingtreemodel.cpp +++ b/mappingtreemodel.cpp @@ -231,6 +231,22 @@ MappingData MappingTreeModel::mappingDataFromIndex(QModelIndex &idx) const{ return mappingDataFromItem(item); } +QList<MappingData> MappingTreeModel::siblingMappingDataFromId(int id){ + QSqlQuery q(mDb); + QList<MappingData> retval; + q.prepare("SELECT DISTINCT(imappings_parents_id) FROM pics_mappings WHERE ipics_id IN (SELECT ipics_id FROM pics_mappings WHERE imappings_parents_id = :id)"); + q.bindValue(":id", id); + if(q.exec()){ + while(q.next()){ + QModelIndex idx = findRecursive(q.value(0), MappingId, rootIndex()); + if(idx.isValid()){ + retval << mappingDataFromIndex(idx); + } + } + } + return retval; +} + void MappingTreeModel::populate(){ if(mType == -1){ return; |