diff options
author | Arno <am@disconnect.de> | 2012-09-30 04:34:22 +0200 |
---|---|---|
committer | Arno <am@disconnect.de> | 2012-09-30 04:34:22 +0200 |
commit | 887c2cd696c54af0cd6fdd54950d006626afeacc (patch) | |
tree | 2ad296208a7d8e44ac249612dfcd09919e7ba07d /pictureswidget.h | |
parent | 5addc8a8ec89c1e354949bcf5c3152fea4fe44b9 (diff) | |
download | SheMov-887c2cd696c54af0cd6fdd54950d006626afeacc.tar.gz SheMov-887c2cd696c54af0cd6fdd54950d006626afeacc.tar.bz2 SheMov-887c2cd696c54af0cd6fdd54950d006626afeacc.zip |
Foremost a fix for SmTreeModel
Not working again, but I eventually have to commit the changes. Fixes to
SmTreeModel:
* Fix SmTreeModel::index(). The previous comment was quite valid. I'm
surprised that it worked at all. I have no clue why to return an invalid
QModelIndex if the column isn't 0. Now an index with any valid column
number can be created.
* Fix SmTreeModel::parent(). Again, why shouldn't we create a parent
index with a column other than 0? No idea...
* Fix SmTreeModel::headerData(). Add some sanity checks.
* Fix SmTreeModel::findRecursive(). Well, what is there to say. It never
worked for models with a depth > 1, but obviously it didn't really
matter until now. To make it work I had to change SmTreeItem as well.
SmTreeItem::next() returns the next valid parent/sibling, or 0 if there
isn't one.
There may be some fallout from these changes, but they're yet to be
seen.
Changes to PictureView:
* fix selecting an item according to the new datasbase layout
* same goes for editing items. If an update actually works has to be
checked.
Overall, it's an intermediate commit that should have been a sane series
of commits. Can't be changed now...
Diffstat (limited to 'pictureswidget.h')
-rw-r--r-- | pictureswidget.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/pictureswidget.h b/pictureswidget.h index cc1578d..b2da8ea 100644 --- a/pictureswidget.h +++ b/pictureswidget.h @@ -28,6 +28,7 @@ class QEvent; class HoverWindow; class PictureViewer2; class QAction; +struct MappingData; class PicturesWidget : public QWidget { Q_OBJECT @@ -119,14 +120,17 @@ class PicFilesModel : public SmTreeModel { QList<QList<QVariant> > allFiles() const; void removeFiles(const QList<QPersistentModelIndex> &files); bool changeMappings(const QList<int> &fileIds, const QList<int> &mappingIds); + QList<MappingData> mappingDataFromFiles(const QList<int> fileIds) const; public slots: void populate(); private: + QList<int> mappingPIdsFromFiles(QList<int> fileIds) const; QSqlDatabase mDb; MappingTreeModel *mMappingTreeModel; QString mPopulateQS; + QString mMappingsQS; QSqlQuery *mDeleteFileQ; QSqlQuery *mDeleteMappingsQ; QSqlQuery *mAddMappingsQ; |