videocollection/tsrc/stubs/src/videolistdatamodel.cpp
author hgs
Fri, 16 Apr 2010 18:13:14 +0300
changeset 36 8aed59de29f9
parent 35 3738fe97f027
child 37 4eb2df7f7cbe
permissions -rw-r--r--
201015
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
34
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). 
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description: VideoListDataModel class implementation
hgs
parents:
diff changeset
    15
* 
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
#include <qstringlist.h>
hgs
parents:
diff changeset
    19
hgs
parents:
diff changeset
    20
#include "videolistdatamodel.h"
hgs
parents:
diff changeset
    21
#include "videolistdatamodeldata.h"
hgs
parents:
diff changeset
    22
hgs
parents:
diff changeset
    23
QMap<int, QVariant> VideoListDataModelData::mData;
hgs
parents:
diff changeset
    24
QModelIndex VideoListDataModelData::mLastIndex;
hgs
parents:
diff changeset
    25
int VideoListDataModelData::mDataAccessCount = 0;
hgs
parents:
diff changeset
    26
int VideoListDataModelData::mRowCount = 0;
36
hgs
parents: 35
diff changeset
    27
int VideoListDataModelData::mRowCountDecrement = 0;
34
hgs
parents:
diff changeset
    28
hgs
parents:
diff changeset
    29
VideoListDataModel::VideoListDataModel(QObject *parent) :
hgs
parents:
diff changeset
    30
    QAbstractItemModel(parent),
hgs
parents:
diff changeset
    31
    d_ptr(0), 
hgs
parents:
diff changeset
    32
    mCollectionClient(0),
hgs
parents:
diff changeset
    33
    mDeleteWorker(0),
hgs
parents:
diff changeset
    34
    mInitialized(false)
hgs
parents:
diff changeset
    35
{
hgs
parents:
diff changeset
    36
    // nop
hgs
parents:
diff changeset
    37
}
hgs
parents:
diff changeset
    38
hgs
parents:
diff changeset
    39
VideoListDataModel::~VideoListDataModel()
hgs
parents:
diff changeset
    40
{
hgs
parents:
diff changeset
    41
    VideoListDataModelData::reset();
hgs
parents:
diff changeset
    42
}
hgs
parents:
diff changeset
    43
hgs
parents:
diff changeset
    44
int VideoListDataModel::initialize()
hgs
parents:
diff changeset
    45
{
hgs
parents:
diff changeset
    46
    if (VideoListDataModelData::mRowCount)
hgs
parents:
diff changeset
    47
    {
hgs
parents:
diff changeset
    48
        int newCount = VideoListDataModelData::mRowCount;
hgs
parents:
diff changeset
    49
        int oldCount = VideoListDataModelData::mData.count();
35
hgs
parents: 34
diff changeset
    50
        if(newCount == oldCount)
hgs
parents: 34
diff changeset
    51
        {
hgs
parents: 34
diff changeset
    52
            return 0;
hgs
parents: 34
diff changeset
    53
        }
34
hgs
parents:
diff changeset
    54
        if (newCount < oldCount)
hgs
parents:
diff changeset
    55
        {
35
hgs
parents: 34
diff changeset
    56
            beginRemoveRows(QModelIndex(), newCount, oldCount);
hgs
parents: 34
diff changeset
    57
            endRemoveRows();
34
hgs
parents:
diff changeset
    58
        }
hgs
parents:
diff changeset
    59
        else
hgs
parents:
diff changeset
    60
        {
35
hgs
parents: 34
diff changeset
    61
            beginInsertRows(QModelIndex(), oldCount, newCount-1);
hgs
parents: 34
diff changeset
    62
            endInsertRows();
34
hgs
parents:
diff changeset
    63
        }
hgs
parents:
diff changeset
    64
    }
hgs
parents:
diff changeset
    65
    else
hgs
parents:
diff changeset
    66
    {
hgs
parents:
diff changeset
    67
        reset();
hgs
parents:
diff changeset
    68
    }
hgs
parents:
diff changeset
    69
    return 0;
hgs
parents:
diff changeset
    70
}
hgs
parents:
diff changeset
    71
hgs
parents:
diff changeset
    72
VideoCollectionClient* VideoListDataModel::getCollectionClient()
hgs
parents:
diff changeset
    73
{
hgs
parents:
diff changeset
    74
    // not stubbed
hgs
parents:
diff changeset
    75
    return 0;
hgs
parents:
diff changeset
    76
}
hgs
parents:
diff changeset
    77
 
hgs
parents:
diff changeset
    78
int VideoListDataModel::connectSignals()
hgs
parents:
diff changeset
    79
{
hgs
parents:
diff changeset
    80
    // not stubbed
hgs
parents:
diff changeset
    81
    return 0;
hgs
parents:
diff changeset
    82
}
hgs
parents:
diff changeset
    83
hgs
parents:
diff changeset
    84
void VideoListDataModel::disconnectSignals()
hgs
parents:
diff changeset
    85
{
hgs
parents:
diff changeset
    86
    // not stubbed
hgs
parents:
diff changeset
    87
}
hgs
parents:
diff changeset
    88
hgs
parents:
diff changeset
    89
TMPXItemId VideoListDataModel::mediaIdAtIndex(int index) const
hgs
parents:
diff changeset
    90
{
hgs
parents:
diff changeset
    91
    Q_UNUSED(index);
hgs
parents:
diff changeset
    92
    // not stubbed
hgs
parents:
diff changeset
    93
    return TMPXItemId();
hgs
parents:
diff changeset
    94
}
hgs
parents:
diff changeset
    95
hgs
parents:
diff changeset
    96
QString VideoListDataModel::mediaFilePathForId(TMPXItemId mediaId) const
hgs
parents:
diff changeset
    97
{
hgs
parents:
diff changeset
    98
    Q_UNUSED(mediaId);
hgs
parents:
diff changeset
    99
    // not stubbed
hgs
parents:
diff changeset
   100
    return QString();
hgs
parents:
diff changeset
   101
}
hgs
parents:
diff changeset
   102
hgs
parents:
diff changeset
   103
int VideoListDataModel::rowCount(const QModelIndex &parent ) const
hgs
parents:
diff changeset
   104
{
hgs
parents:
diff changeset
   105
    Q_UNUSED(parent);
hgs
parents:
diff changeset
   106
36
hgs
parents: 35
diff changeset
   107
    uint count = VideoListDataModelData::mRowCount - VideoListDataModelData::mRowCountDecrement;
hgs
parents: 35
diff changeset
   108
    if(VideoListDataModelData::mRowCountDecrement > 0)
hgs
parents: 35
diff changeset
   109
    {
hgs
parents: 35
diff changeset
   110
        VideoListDataModelData::mRowCountDecrement--;
hgs
parents: 35
diff changeset
   111
    }
hgs
parents: 35
diff changeset
   112
    return count;
34
hgs
parents:
diff changeset
   113
}
hgs
parents:
diff changeset
   114
hgs
parents:
diff changeset
   115
QMap<int, QVariant> VideoListDataModel::itemData(const QModelIndex &index) const
hgs
parents:
diff changeset
   116
{
hgs
parents:
diff changeset
   117
    QMap<int, QVariant> itemData;
hgs
parents:
diff changeset
   118
    if (index.isValid()) 
hgs
parents:
diff changeset
   119
    {
hgs
parents:
diff changeset
   120
        // returns only basic data of the item
hgs
parents:
diff changeset
   121
        itemData.insert(Qt::DisplayRole, data(index, Qt::DisplayRole));
hgs
parents:
diff changeset
   122
        itemData.insert(Qt::DecorationRole, data(index, Qt::DecorationRole)); 
hgs
parents:
diff changeset
   123
        itemData.insert(Qt::BackgroundRole, data(index, Qt::BackgroundRole)); 
hgs
parents:
diff changeset
   124
    }
hgs
parents:
diff changeset
   125
    return itemData;
hgs
parents:
diff changeset
   126
}
hgs
parents:
diff changeset
   127
hgs
parents:
diff changeset
   128
QString VideoListDataModel::prepareDetailRow(int index) const
hgs
parents:
diff changeset
   129
{
hgs
parents:
diff changeset
   130
    Q_UNUSED(index);
hgs
parents:
diff changeset
   131
    
hgs
parents:
diff changeset
   132
    // not stubbed
hgs
parents:
diff changeset
   133
    return QString();
hgs
parents:
diff changeset
   134
}
hgs
parents:
diff changeset
   135
hgs
parents:
diff changeset
   136
QString VideoListDataModel::prepareSizeString(int index) const
hgs
parents:
diff changeset
   137
{
hgs
parents:
diff changeset
   138
    Q_UNUSED(index);
hgs
parents:
diff changeset
   139
    
hgs
parents:
diff changeset
   140
    // not stubbed
hgs
parents:
diff changeset
   141
    return QString();
hgs
parents:
diff changeset
   142
}
hgs
parents:
diff changeset
   143
36
hgs
parents: 35
diff changeset
   144
QString VideoListDataModel::prepareShortLengthString(int index) const
34
hgs
parents:
diff changeset
   145
{
hgs
parents:
diff changeset
   146
    Q_UNUSED(index);
hgs
parents:
diff changeset
   147
    
hgs
parents:
diff changeset
   148
    // not stubbed
36
hgs
parents: 35
diff changeset
   149
    return QString();
34
hgs
parents:
diff changeset
   150
}
hgs
parents:
diff changeset
   151
hgs
parents:
diff changeset
   152
QVariant VideoListDataModel::data(const QModelIndex &index, int role) const
hgs
parents:
diff changeset
   153
{
hgs
parents:
diff changeset
   154
    QVariant returnValue = QVariant();
hgs
parents:
diff changeset
   155
    VideoListDataModelData::mLastIndex = index;
hgs
parents:
diff changeset
   156
    VideoListDataModelData::mDataAccessCount++;
hgs
parents:
diff changeset
   157
    if (index.isValid()) 
hgs
parents:
diff changeset
   158
    {
hgs
parents:
diff changeset
   159
        returnValue = VideoListDataModelData::mData.value(role);
hgs
parents:
diff changeset
   160
    }
hgs
parents:
diff changeset
   161
    
hgs
parents:
diff changeset
   162
    return returnValue;
hgs
parents:
diff changeset
   163
}
hgs
parents:
diff changeset
   164
hgs
parents:
diff changeset
   165
int VideoListDataModel::columnCount(const QModelIndex &parent) const
hgs
parents:
diff changeset
   166
{
hgs
parents:
diff changeset
   167
    Q_UNUSED(parent);
hgs
parents:
diff changeset
   168
    
hgs
parents:
diff changeset
   169
    return 1;
hgs
parents:
diff changeset
   170
}
hgs
parents:
diff changeset
   171
hgs
parents:
diff changeset
   172
QModelIndex VideoListDataModel::index(int row,
hgs
parents:
diff changeset
   173
    int column,
hgs
parents:
diff changeset
   174
    const QModelIndex &parent) const
hgs
parents:
diff changeset
   175
{
hgs
parents:
diff changeset
   176
    Q_UNUSED(parent);
hgs
parents:
diff changeset
   177
    
hgs
parents:
diff changeset
   178
    return createIndex(row, column);
hgs
parents:
diff changeset
   179
}
hgs
parents:
diff changeset
   180
hgs
parents:
diff changeset
   181
QModelIndex VideoListDataModel::parent(const QModelIndex &index) const
hgs
parents:
diff changeset
   182
{
hgs
parents:
diff changeset
   183
    Q_UNUSED(index);
hgs
parents:
diff changeset
   184
    
hgs
parents:
diff changeset
   185
    // not stubbed
hgs
parents:
diff changeset
   186
    return QModelIndex();
hgs
parents:
diff changeset
   187
}
hgs
parents:
diff changeset
   188
hgs
parents:
diff changeset
   189
bool VideoListDataModel::removeRows(const QModelIndexList &indexList)
hgs
parents:
diff changeset
   190
{
hgs
parents:
diff changeset
   191
    Q_UNUSED(indexList);
hgs
parents:
diff changeset
   192
    
hgs
parents:
diff changeset
   193
    // not stubbed
hgs
parents:
diff changeset
   194
    return false;
hgs
parents:
diff changeset
   195
}
hgs
parents:
diff changeset
   196
hgs
parents:
diff changeset
   197
bool VideoListDataModel::belongsToAlbum(const TMPXItemId &itemId, TMPXItemId albumId) const
hgs
parents:
diff changeset
   198
{
hgs
parents:
diff changeset
   199
    Q_UNUSED(albumId);
hgs
parents:
diff changeset
   200
    Q_UNUSED(itemId);
hgs
parents:
diff changeset
   201
    
hgs
parents:
diff changeset
   202
    // not stubbed
hgs
parents:
diff changeset
   203
    return false;
hgs
parents:
diff changeset
   204
}
hgs
parents:
diff changeset
   205
hgs
parents:
diff changeset
   206
void VideoListDataModel::setAlbumInUse(TMPXItemId albumId)
hgs
parents:
diff changeset
   207
{
hgs
parents:
diff changeset
   208
    Q_UNUSED(albumId);
hgs
parents:
diff changeset
   209
    
hgs
parents:
diff changeset
   210
    // not stubbed
hgs
parents:
diff changeset
   211
}
hgs
parents:
diff changeset
   212
hgs
parents:
diff changeset
   213
void VideoListDataModel::deleteStartingFailsSlot(QList<TMPXItemId> ids)
hgs
parents:
diff changeset
   214
{
hgs
parents:
diff changeset
   215
    Q_UNUSED(ids);
hgs
parents:
diff changeset
   216
    
hgs
parents:
diff changeset
   217
    // not stubbed
hgs
parents:
diff changeset
   218
}
hgs
parents:
diff changeset
   219
hgs
parents:
diff changeset
   220
void VideoListDataModel::reportAsyncStatus(int statusCode, QVariant &additional)
hgs
parents:
diff changeset
   221
{
hgs
parents:
diff changeset
   222
    Q_UNUSED(statusCode);
hgs
parents:
diff changeset
   223
    Q_UNUSED(additional);
hgs
parents:
diff changeset
   224
    
hgs
parents:
diff changeset
   225
    // not stubbed
hgs
parents:
diff changeset
   226
}
hgs
parents:
diff changeset
   227
hgs
parents:
diff changeset
   228
// end of file