00001
00002
00003
00004
00005
00006
00007
00008
00010
00011 #ifndef VIDEOLOOKUPINFO_H_
00012 #define VIDEOLOOKUPINFO_H_
00013
00014 #include <QString>
00015 #include <QDateTime>
00016
00017 #include "serviceexp.h"
00018 #include "datacontracthelper.h"
00019
00020 namespace DTC
00021 {
00022
00024
00025 class SERVICE_PUBLIC ArtworkItem : public QObject
00026 {
00027 Q_OBJECT
00028 Q_CLASSINFO( "version" , "1.02" );
00029
00030 Q_PROPERTY( QString Type READ Type WRITE setType )
00031 Q_PROPERTY( QString Url READ Url WRITE setUrl )
00032 Q_PROPERTY( QString Thumbnail READ Thumbnail WRITE setThumbnail )
00033 Q_PROPERTY( int Width READ Width WRITE setWidth )
00034 Q_PROPERTY( int Height READ Height WRITE setHeight )
00035
00036 PROPERTYIMP ( QString , Type )
00037 PROPERTYIMP ( QString , Url )
00038 PROPERTYIMP ( QString , Thumbnail )
00039 PROPERTYIMP ( int , Width )
00040 PROPERTYIMP ( int , Height )
00041
00042 public:
00043
00044 static void InitializeCustomTypes()
00045 {
00046 qRegisterMetaType< ArtworkItem >();
00047 qRegisterMetaType< ArtworkItem* >();
00048 }
00049
00050 public:
00051
00052 ArtworkItem(QObject *parent = 0)
00053 : QObject ( parent )
00054 {
00055 }
00056
00057 ArtworkItem( const ArtworkItem &src )
00058 {
00059 Copy( src );
00060 }
00061
00062 void Copy( const ArtworkItem &src )
00063 {
00064 m_Type = src.m_Type ;
00065 m_Url = src.m_Url ;
00066 m_Thumbnail = src.m_Thumbnail ;
00067 m_Width = src.m_Width ;
00068 m_Height = src.m_Height ;
00069 }
00070 };
00071
00073
00074 class SERVICE_PUBLIC VideoLookup : public QObject
00075 {
00076 Q_OBJECT
00077 Q_CLASSINFO( "version" , "1.0" );
00078
00079 Q_CLASSINFO( "Artwork", "type=DTC::ArtworkItem");
00080
00081 Q_PROPERTY( QString Title READ Title WRITE setTitle )
00082 Q_PROPERTY( QString SubTitle READ SubTitle WRITE setSubTitle )
00083 Q_PROPERTY( int Season READ Season WRITE setSeason )
00084 Q_PROPERTY( int Episode READ Episode WRITE setEpisode )
00085 Q_PROPERTY( int Year READ Year WRITE setYear )
00086 Q_PROPERTY( QString Tagline READ Tagline WRITE setTagline )
00087 Q_PROPERTY( QString Description READ Description WRITE setDescription )
00088 Q_PROPERTY( QString Certification READ Certification WRITE setCertification )
00089 Q_PROPERTY( QString Inetref READ Inetref WRITE setInetref )
00090 Q_PROPERTY( QString Collectionref READ Collectionref WRITE setCollectionref )
00091 Q_PROPERTY( QString HomePage READ HomePage WRITE setHomePage )
00092 Q_PROPERTY( QDateTime ReleaseDate READ ReleaseDate WRITE setReleaseDate )
00093 Q_PROPERTY( float UserRating READ UserRating WRITE setUserRating )
00094 Q_PROPERTY( int Length READ Length WRITE setLength )
00095 Q_PROPERTY( QString Language READ Language WRITE setLanguage )
00096 Q_PROPERTY( QStringList Countries READ Countries WRITE setCountries )
00097 Q_PROPERTY( int Popularity READ Popularity WRITE setPopularity )
00098 Q_PROPERTY( int Budget READ Budget WRITE setBudget )
00099 Q_PROPERTY( int Revenue READ Revenue WRITE setRevenue )
00100 Q_PROPERTY( QString IMDB READ IMDB WRITE setIMDB )
00101 Q_PROPERTY( QString TMSRef READ TMSRef WRITE setTMSRef )
00102
00103 Q_PROPERTY( QVariantList Artwork READ Artwork DESIGNABLE true )
00104
00105 PROPERTYIMP ( QString , Title )
00106 PROPERTYIMP ( QString , SubTitle )
00107 PROPERTYIMP ( int , Season )
00108 PROPERTYIMP ( int , Episode )
00109 PROPERTYIMP ( int , Year )
00110 PROPERTYIMP ( QString , Tagline )
00111 PROPERTYIMP ( QString , Description )
00112 PROPERTYIMP ( QString , Certification )
00113 PROPERTYIMP ( QString , Inetref )
00114 PROPERTYIMP ( QString , Collectionref )
00115 PROPERTYIMP ( QString , HomePage )
00116 PROPERTYIMP ( QDateTime , ReleaseDate )
00117 PROPERTYIMP ( float , UserRating )
00118 PROPERTYIMP ( int , Length )
00119 PROPERTYIMP ( QString , Language )
00120 PROPERTYIMP ( QStringList, Countries )
00121 PROPERTYIMP ( int , Popularity )
00122 PROPERTYIMP ( int , Budget )
00123 PROPERTYIMP ( int , Revenue )
00124 PROPERTYIMP ( QString , IMDB )
00125 PROPERTYIMP ( QString , TMSRef )
00126
00127 PROPERTYIMP_RO_REF( QVariantList, Artwork)
00128
00129 public:
00130
00131 static void InitializeCustomTypes()
00132 {
00133 qRegisterMetaType< VideoLookup >();
00134 qRegisterMetaType< VideoLookup* >();
00135
00136 ArtworkItem::InitializeCustomTypes();
00137 }
00138
00139 public:
00140
00141 VideoLookup(QObject *parent = 0)
00142 : QObject ( parent )
00143 {
00144 }
00145
00146 VideoLookup( const VideoLookup &src )
00147 {
00148 Copy( src );
00149 }
00150
00151 void Copy( const VideoLookup &src )
00152 {
00153 m_Title = src.m_Title ;
00154 m_SubTitle = src.m_SubTitle ;
00155 m_Season = src.m_Season ;
00156 m_Episode = src.m_Episode ;
00157 m_Year = src.m_Year ;
00158 m_Tagline = src.m_Tagline ;
00159 m_Description = src.m_Description ;
00160 m_Certification = src.m_Certification ;
00161 m_Inetref = src.m_Inetref ;
00162 m_Collectionref = src.m_Collectionref ;
00163 m_HomePage = src.m_HomePage ;
00164 m_ReleaseDate = src.m_ReleaseDate ;
00165 m_UserRating = src.m_UserRating ;
00166 m_Length = src.m_Length ;
00167
00168 CopyListContents< ArtworkItem >( this, m_Artwork, src.m_Artwork );
00169 }
00170
00171 ArtworkItem *AddNewArtwork()
00172 {
00173 ArtworkItem *pObject = new ArtworkItem( this );
00174 Artwork().append( QVariant::fromValue<QObject *>( pObject ));
00175
00176 return pObject;
00177 }
00178
00179 };
00180
00181 }
00182
00183 Q_DECLARE_METATYPE( DTC::VideoLookup )
00184 Q_DECLARE_METATYPE( DTC::VideoLookup* )
00185 Q_DECLARE_METATYPE( DTC::ArtworkItem )
00186 Q_DECLARE_METATYPE( DTC::ArtworkItem* )
00187
00188 #endif