equal
deleted
inserted
replaced
19 #include <QList> |
19 #include <QList> |
20 #include <QMimeData> |
20 #include <QMimeData> |
21 #include <hbicon.h> |
21 #include <hbicon.h> |
22 #include <hbnamespace.h> |
22 #include <hbnamespace.h> |
23 |
23 |
|
24 #include <hgwidgets.h> |
|
25 |
|
26 |
24 #include "mpcollectiondatamodel.h" |
27 #include "mpcollectiondatamodel.h" |
25 #include "mpcollectionalbumartmanager.h" |
28 #include "mpcollectionalbumartmanager.h" |
26 #include "mpmpxcollectiondata.h" |
29 #include "mpmpxcollectiondata.h" |
27 #include "mptrace.h" |
30 #include "mptrace.h" |
28 |
31 |
63 |
66 |
64 /*! |
67 /*! |
65 Constructs the collection data model. |
68 Constructs the collection data model. |
66 */ |
69 */ |
67 MpCollectionDataModel::MpCollectionDataModel( MpMpxCollectionData *data, QObject *parent ) |
70 MpCollectionDataModel::MpCollectionDataModel( MpMpxCollectionData *data, QObject *parent ) |
68 : QAbstractListModel(parent), |
71 : QAbstractListModel( parent ), |
69 mCollectionData(data), |
72 mCollectionData( data ), |
70 mRowCount(0), |
73 mRowCount( 0 ), |
71 mAlbumIndexOffset(0) |
74 mAlbumIndexOffset( 0 ), |
|
75 mHiddenItemIndex( -1 ) |
72 { |
76 { |
73 TX_ENTRY |
77 TX_ENTRY |
74 connect( mCollectionData, SIGNAL(contextChanged(TCollectionContext)), this, SLOT(setContext(TCollectionContext)) ); |
78 connect( mCollectionData, SIGNAL(contextChanged(TCollectionContext)), this, SLOT(setContext(TCollectionContext)) ); |
75 connect( mCollectionData, SIGNAL(dataChanged()), this, SLOT(reloadData()) ); |
79 connect( mCollectionData, SIGNAL(dataChanged()), this, SLOT(reloadData()) ); |
76 mAlbumArtManager = new MpCollectionAlbumArtManager(mCollectionData); |
80 mAlbumArtManager = new MpCollectionAlbumArtManager(mCollectionData); |
240 default: |
244 default: |
241 break; |
245 break; |
242 } |
246 } |
243 returnValue = feedbackIndex; |
247 returnValue = feedbackIndex; |
244 } |
248 } |
|
249 else if ( role == HgWidget::HgVisibilityRole |
|
250 && context == ECollectionContextAlbumsMediaWall) { |
|
251 returnValue = !( row == mHiddenItemIndex ); |
|
252 } |
245 TX_EXIT |
253 TX_EXIT |
246 return returnValue; |
254 return returnValue; |
247 } |
255 } |
248 |
256 |
249 /*! |
257 /*! |
342 emit orderChanged( mpxContainerId, mpxItemId, rowFrom, row ); |
350 emit orderChanged( mpxContainerId, mpxItemId, rowFrom, row ); |
343 mCollectionData->insertCachedItem( row ); |
351 mCollectionData->insertCachedItem( row ); |
344 mRowCount++; |
352 mRowCount++; |
345 endInsertRows(); |
353 endInsertRows(); |
346 return true; |
354 return true; |
|
355 } |
|
356 |
|
357 /*! |
|
358 Sets the item visibility, model will report \a visible value as |
|
359 HgWidget::HgVisibilityRole for the item at \a index. |
|
360 datachanged() signal is emited when calling this function. |
|
361 Currently this is only used by Media Wall View. |
|
362 */ |
|
363 void MpCollectionDataModel::setItemVisibility(const QModelIndex &index, bool visible) |
|
364 { |
|
365 mHiddenItemIndex = visible ? -1 : index.row(); |
|
366 emit dataChanged(index, index); |
347 } |
367 } |
348 |
368 |
349 /*! |
369 /*! |
350 Returns pointer to MpMpxCollectionData, which is the collection data. |
370 Returns pointer to MpMpxCollectionData, which is the collection data. |
351 */ |
371 */ |