inc/mpcollectiondatamodel.h
changeset 51 560ce2306a17
parent 37 eb79a7c355bf
equal deleted inserted replaced
47:4cc1412daed0 51:560ce2306a17
    22 
    22 
    23 #include "mpmpxcollectionviewdefs.h"
    23 #include "mpmpxcollectionviewdefs.h"
    24 
    24 
    25 class MpMpxCollectionData;
    25 class MpMpxCollectionData;
    26 class MpCollectionAlbumArtManager;
    26 class MpCollectionAlbumArtManager;
       
    27 class MpPlaybackData;
    27 
    28 
    28 #if defined(BUILD_MPDATA_LIB)
    29 #if defined(BUILD_MPDATA_LIB)
    29 #define MPDATA_EXPORT Q_DECL_EXPORT
    30 #define MPDATA_EXPORT Q_DECL_EXPORT
    30 #else
    31 #else
    31 #define MPDATA_EXPORT Q_DECL_IMPORT
    32 #define MPDATA_EXPORT Q_DECL_IMPORT
    35 {
    36 {
    36     Q_OBJECT
    37     Q_OBJECT
    37    
    38    
    38 public:
    39 public:
    39 
    40 
    40     explicit MpCollectionDataModel( MpMpxCollectionData *data, QObject *parent=0 );
    41     explicit MpCollectionDataModel( MpMpxCollectionData *data, MpPlaybackData *playbackData = 0, QObject *parent=0 );
    41     virtual ~MpCollectionDataModel();
    42     virtual ~MpCollectionDataModel();
    42 
    43 
    43     int rowCount(const QModelIndex &parent=QModelIndex()) const;
    44     int rowCount(const QModelIndex &parent=QModelIndex()) const;
    44     QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const;
    45     QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const;
    45     Qt::DropActions supportedDropActions() const;
    46     Qt::DropActions supportedDropActions() const;
    50                               int row, int column, const QModelIndex &parent);
    51                               int row, int column, const QModelIndex &parent);
    51     void setItemVisibility(const QModelIndex &index, bool visible);
    52     void setItemVisibility(const QModelIndex &index, bool visible);
    52     
    53     
    53     MpMpxCollectionData *collectionData();
    54     MpMpxCollectionData *collectionData();
    54     
    55     
       
    56     void setLayout(TCollectionLayout layout);
       
    57     
    55 signals:
    58 signals:
    56 
    59 
    57     void orderChanged( int containerId, int itemId, int itemOrdinal, int newOrdinal );
    60     void orderChanged( int containerId, int itemId, int itemOrdinal, int newOrdinal );
    58     void dataReloaded();
    61     void dataReloaded();
    59 
    62 
    61 
    64 
    62     void setContext( TCollectionContext context );
    65     void setContext( TCollectionContext context );
    63     void updateAlbumArt( int index );
    66     void updateAlbumArt( int index );
    64     void refreshModel();
    67     void refreshModel();
    65     void reloadData();
    68     void reloadData();
       
    69     void reloadData( int fromIndex, int toIndex );
       
    70     void fileCorrupted( int songId );     
    66 
    71 
    67 private:
    72 private:
    68 
    73 
    69     MpMpxCollectionData             *mCollectionData;       // Not own
    74     MpMpxCollectionData             *mCollectionData;       // Not own
       
    75     MpPlaybackData                  *mPlaybackData;         // Not own
    70     MpCollectionAlbumArtManager     *mAlbumArtManager;      // Own
    76     MpCollectionAlbumArtManager     *mAlbumArtManager;      // Own
    71     int                             mRowCount;
    77     int                             mRowCount;
    72     int                             mAlbumIndexOffset;
    78     int                             mAlbumIndexOffset;
    73     int                             mHiddenItemIndex;
    79     int                             mHiddenItemIndex;
       
    80     TCollectionLayout               mCollectionLayout;
    74 
    81 
    75 };
    82 };
    76 
    83 
    77 #endif // MPCOLLECTIONDATAMODEL_H
    84 #endif // MPCOLLECTIONDATAMODEL_H
    78 
    85