00001 #ifndef VIDEOUTILS_H_
00002 #define VIDEOUTILS_H_
00003
00004 #include "parentalcontrols.h"
00005 #include "mythmetaexp.h"
00006 #include "metadatacommon.h"
00007
00008 template <typename T>
00009 inline void CheckedSet(T *uiItem, const QString &value)
00010 {
00011 if (uiItem)
00012 {
00013 if (!value.isEmpty())
00014 uiItem->SetText(value);
00015 else
00016 uiItem->Reset();
00017 }
00018 }
00019
00020 class MythUIStateType;
00021 class MythUIType;
00022 class MythUIImage;
00023
00024 template <>
00025 META_PUBLIC void CheckedSet( MythUIStateType *uiItem, const QString &state);
00026
00027 META_PUBLIC void CheckedSet( MythUIType *container, const QString &itemName,
00028 const QString &value);
00029
00030 META_PUBLIC void CheckedSet( MythUIImage *uiItem, const QString &filename);
00031
00032 META_PUBLIC QStringList GetVideoDirsByHost(QString host);
00033 META_PUBLIC QStringList GetVideoDirs();
00034
00035 META_PUBLIC bool IsDefaultCoverFile(const QString &coverfile);
00036 META_PUBLIC bool IsDefaultScreenshot(const QString &screenshot);
00037 META_PUBLIC bool IsDefaultBanner(const QString &banner);
00038 META_PUBLIC bool IsDefaultFanart(const QString &fanart);
00039
00040 class VideoMetadata;
00041
00042 META_PUBLIC QString GetDisplayUserRating(float userrating);
00043 META_PUBLIC QString GetDisplayLength(int length);
00044 META_PUBLIC QString GetDisplayBrowse(bool browse);
00045 META_PUBLIC QString GetDisplayWatched(bool watched);
00046 META_PUBLIC QString GetDisplayProcessed(bool processed);
00047 META_PUBLIC QString GetDisplayYear(int year);
00048 META_PUBLIC QString GetDisplayRating(const QString &rating);
00049
00050 META_PUBLIC QString GetDisplayGenres(const VideoMetadata &item);
00051 META_PUBLIC QString GetDisplayCountries(const VideoMetadata &item);
00052 META_PUBLIC QStringList GetDisplayCast(const VideoMetadata &item);
00053
00054 META_PUBLIC QString TrailerToState(const QString &trailerFile);
00055 META_PUBLIC QString ParentalLevelToState(const ParentalLevel &level);
00056 META_PUBLIC QString WatchedToState(bool watched);
00057
00058 META_PUBLIC VideoContentType ContentTypeFromString(const QString &type);
00059 META_PUBLIC QString ContentTypeToString(VideoContentType type);
00060
00061
00062
00063 #include <storagegroup.h>
00064 #include <mythcorecontext.h>
00065 inline QString generate_file_url(
00066 const QString &storage_group, const QString &host, const QString &path)
00067 {
00068 QString ip = gCoreContext->GetBackendServerIP(host);
00069 uint port = gCoreContext->GetSettingOnHost("BackendServerPort",
00070 host).toUInt();
00071
00072 return gCoreContext->GenMythURL(ip,port,path,
00073 StorageGroup::GetGroupToUse(host, storage_group));
00074
00075 }
00076
00077 #endif // VIDEOUTILS_H_