You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
123 lines
2.4 KiB
C++
123 lines
2.4 KiB
C++
#include "cimage.h"
|
|
|
|
#include <QDir>
|
|
|
|
|
|
QString strMEDIATYPE[] =
|
|
{
|
|
"unknown",
|
|
"actor",
|
|
"movie",
|
|
"set",
|
|
"tvshow",
|
|
"season",
|
|
"episode",
|
|
"musicvideo"
|
|
};
|
|
|
|
QString strTYPE[] =
|
|
{
|
|
"unknown",
|
|
"thumb",
|
|
"fanart",
|
|
"poster",
|
|
"banner"
|
|
};
|
|
|
|
|
|
cImage::cImage(cKodiVideoLibrary* lpKodiVideoLibrary, cKodiTexturesLibrary* lpKodiTexturesLibrary, cImage::MEDIATYPE mediaType, cImage::TYPE type, qint32 idMovie, const QString &szPath) :
|
|
m_lpKodiVideoLibrary(lpKodiVideoLibrary),
|
|
m_lpKodiTexturesLibrary(lpKodiTexturesLibrary),
|
|
m_artID(-1),
|
|
m_mediaType(mediaType),
|
|
m_type(type),
|
|
m_idMovie(idMovie),
|
|
m_szURL(""),
|
|
m_szCachedURL(""),
|
|
m_szFileName(""),
|
|
m_textureID(-1),
|
|
m_szPath(szPath)
|
|
{
|
|
if(m_lpKodiVideoLibrary->art(strMEDIATYPE[mediaType], strTYPE[type], idMovie, m_artID, m_szURL))
|
|
{
|
|
if(m_lpKodiTexturesLibrary->texture(m_szURL, m_textureID, m_szCachedURL))
|
|
{
|
|
if(m_szCachedURL.length())
|
|
{
|
|
m_szFileName = m_szPath + QDir::separator() + "userdata" + QDir::separator() + "Thumbnails" + QDir::separator() + m_szCachedURL;
|
|
m_image.load(m_szFileName);
|
|
}
|
|
|
|
return;
|
|
}
|
|
|
|
// downloadFile(m_szURL);
|
|
}
|
|
}
|
|
|
|
cImage::MEDIATYPE cImage::mediaType()
|
|
{
|
|
return(m_mediaType);
|
|
}
|
|
|
|
cImage::TYPE cImage::type()
|
|
{
|
|
return(m_type);
|
|
}
|
|
|
|
qint32 cImage::idMovie()
|
|
{
|
|
return(m_idMovie);
|
|
}
|
|
|
|
QString cImage::fileName()
|
|
{
|
|
return(m_szFileName);
|
|
}
|
|
|
|
QPixmap cImage::image()
|
|
{
|
|
return(m_image);
|
|
}
|
|
|
|
cImageList::cImageList(cKodiVideoLibrary *lpKodiVideoLibrary, cKodiTexturesLibrary* lpKodiTexturesLibrary, const QString& szPath) :
|
|
m_lpKodiVideoLibrary(lpKodiVideoLibrary),
|
|
m_lpKodiTexturesLibrary(lpKodiTexturesLibrary),
|
|
m_szPath(szPath)
|
|
{
|
|
}
|
|
|
|
cImage* cImageList::find(cImage::MEDIATYPE mediaType, cImage::TYPE type, qint32 idMovie)
|
|
{
|
|
cImage* lpImage = 0;
|
|
for(int z = 0;z < count();z++)
|
|
{
|
|
if(mediaType == at(z)->mediaType() && type == at(z)->type() && idMovie == at(z)->idMovie())
|
|
{
|
|
lpImage = at(z);
|
|
return(lpImage);
|
|
}
|
|
}
|
|
|
|
if(!lpImage)
|
|
{
|
|
lpImage = new cImage(m_lpKodiVideoLibrary, m_lpKodiTexturesLibrary, mediaType, type, idMovie, m_szPath);
|
|
append(lpImage);
|
|
return(lpImage);
|
|
}
|
|
|
|
return(0);
|
|
}
|
|
|
|
QPixmap cImageList::get(cImage::MEDIATYPE mediaType, cImage::TYPE type, qint32 idMovie)
|
|
{
|
|
cImage* lpImage = find(mediaType, type, idMovie);
|
|
return(lpImage->image());
|
|
}
|
|
|
|
QString cImageList::fileName(cImage::MEDIATYPE mediaType, cImage::TYPE type, qint32 idMovie)
|
|
{
|
|
cImage* lpImage = find(mediaType, type, idMovie);
|
|
return(lpImage->fileName());
|
|
}
|