本文整理汇总了C++中ProgramInfo::GetScheduledStartTime方法的典型用法代码示例。如果您正苦于以下问题:C++ ProgramInfo::GetScheduledStartTime方法的具体用法?C++ ProgramInfo::GetScheduledStartTime怎么用?C++ ProgramInfo::GetScheduledStartTime使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ProgramInfo
的用法示例。
在下文中一共展示了ProgramInfo::GetScheduledStartTime方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: clone
/// \brief Copies important fields from ProgramInfo
void RecordingInfo::clone(const ProgramInfo &other,
bool ignore_non_serialized_data)
{
bool is_same =
(chanid && recstartts.isValid() && startts.isValid() &&
chanid == other.GetChanID() &&
recstartts == other.GetRecordingStartTime() &&
startts == other.GetScheduledStartTime());
ProgramInfo::clone(other, ignore_non_serialized_data);
if (!is_same)
{
delete record;
record = NULL;
}
oldrecstatus = rsUnknown;
savedrecstatus = rsUnknown;
future = false;
schedorder = 0;
mplexid = 0;
desiredrecstartts = QDateTime();
desiredrecendts = QDateTime();
}
示例2: ShowGuide
/**
* \brief Show the program guide
*/
void ScheduleCommon::ShowGuide(void) const
{
ProgramInfo *pginfo = GetCurrentProgram();
if (!pginfo)
return;
QString startchannel = pginfo->GetChanNum();
uint startchanid = pginfo->GetChanID();
QDateTime starttime = pginfo->GetScheduledStartTime();
GuideGrid::RunProgramGuide(startchanid, startchannel, starttime);
}
示例3: titleChanged
void RecordingSelector::titleChanged(MythUIButtonListItem *item)
{
ProgramInfo *p;
p = qVariantValue<ProgramInfo *>(item->GetData());
if (!p)
return;
if (m_titleText)
m_titleText->SetText(p->GetTitle());
if (m_datetimeText)
m_datetimeText->SetText(p->GetScheduledStartTime()
.toString("dd MMM yy (hh:mm)"));
if (m_descriptionText)
{
m_descriptionText->SetText(
((!p->GetSubtitle().isEmpty()) ? p->GetSubtitle() + "\n" : "") +
p->GetDescription());
}
if (m_filesizeText)
{
m_filesizeText->SetText(formatSize(p->GetFilesize() / 1024));
}
if (m_cutlistImage)
{
if (p->HasCutlist())
m_cutlistImage->Show();
else
m_cutlistImage->Hide();
}
if (m_previewImage)
{
// try to locate a preview image
if (QFile::exists(p->GetPathname() + ".png"))
{
m_previewImage->SetFilename(p->GetPathname() + ".png");
m_previewImage->Load();
}
else
{
m_previewImage->SetFilename("blank.png");
m_previewImage->Load();
}
}
}
示例4: ShowChannelSearch
/**
* \brief Show the channel search
*/
void ScheduleCommon::ShowChannelSearch() const
{
ProgramInfo *pginfo = GetCurrentProgram();
if (!pginfo)
return;
MythScreenStack *mainStack = GetMythMainWindow()->GetMainStack();
ProgLister *pl = new ProgLister(mainStack, plChannel,
QString::number(pginfo->GetChanID()), "",
pginfo->GetScheduledStartTime());
if (pl->Create())
mainStack->AddScreen(pl);
else
delete pl;
}
示例5: DeleteOldEpisode
void ProgLister::DeleteOldEpisode(bool ok)
{
ProgramInfo *pi = GetCurrent();
if (!ok || !pi)
return;
MSqlQuery query(MSqlQuery::InitCon());
query.prepare(
"DELETE FROM oldrecorded "
"WHERE chanid = :CHANID AND "
" starttime = :STARTTIME");
query.bindValue(":CHANID", pi->GetChanID());
query.bindValue(":STARTTIME", pi->GetScheduledStartTime());
if (!query.exec())
MythDB::DBError("ProgLister::DeleteOldEpisode", query);
ScheduledRecording::signalChange(0);
FillItemList(true);
}
示例6: updateRecordingList
void RecordingSelector::updateRecordingList(void)
{
if (!m_recordingList || m_recordingList->size() == 0)
return;
m_recordingButtonList->Reset();
if (m_categorySelector)
{
ProgramInfo *p;
vector<ProgramInfo *>::iterator i = m_recordingList->begin();
for ( ; i != m_recordingList->end(); i++)
{
p = *i;
if (p->GetTitle() == m_categorySelector->GetValue() ||
m_categorySelector->GetValue() == tr("All Recordings"))
{
MythUIButtonListItem* item = new MythUIButtonListItem(
m_recordingButtonList,
p->GetTitle() + " ~ " +
p->GetScheduledStartTime().toString("dd MMM yy (hh:mm)"));
item->setCheckable(true);
if (m_selectedList.indexOf((ProgramInfo *) p) != -1)
{
item->setChecked(MythUIButtonListItem::FullChecked);
}
else
{
item->setChecked(MythUIButtonListItem::NotChecked);
}
item->SetData(qVariantFromValue(p));
}
qApp->processEvents();
}
}
m_recordingButtonList->SetItemCurrent(m_recordingButtonList->GetItemFirst());
titleChanged(m_recordingButtonList->GetItemCurrent());
}
示例7: LoadList
void ViewScheduled::LoadList(bool useExistingData)
{
if (m_inFill)
return;
m_inFill = true;
MythUIButtonListItem *currentItem = m_schedulesList->GetItemCurrent();
QString callsign;
QDateTime startts, recstartts;
if (currentItem)
{
ProgramInfo *currentpginfo = qVariantValue<ProgramInfo*>
(currentItem->GetData());
if (currentpginfo)
{
callsign = currentpginfo->GetChannelSchedulingID();
startts = currentpginfo->GetScheduledStartTime();
recstartts = currentpginfo->GetRecordingStartTime();
}
}
QDateTime now = QDateTime::currentDateTime();
QMap<int, int> toomanycounts;
m_schedulesList->Reset();
if (m_groupList)
m_groupList->Reset();
m_recgroupList.clear();
if (!useExistingData)
LoadFromScheduler(m_recList, m_conflictBool);
ProgramList::iterator pit = m_recList.begin();
QString currentDate;
m_recgroupList[m_defaultGroup] = ProgramList(false);
m_recgroupList[m_defaultGroup].setAutoDelete(false);
while (pit != m_recList.end())
{
ProgramInfo *pginfo = *pit;
const RecStatusType recstatus = pginfo->GetRecordingStatus();
if ((pginfo->GetRecordingEndTime() >= now ||
pginfo->GetScheduledEndTime() >= now) &&
(m_showAll ||
recstatus <= rsWillRecord ||
recstatus == rsDontRecord ||
(recstatus == rsTooManyRecordings &&
++toomanycounts[pginfo->GetRecordingRuleID()] <= 1) ||
(recstatus > rsTooManyRecordings &&
recstatus != rsRepeat &&
recstatus != rsNeverRecord)))
{
m_cardref[pginfo->GetCardID()]++;
if (pginfo->GetCardID() > m_maxcard)
m_maxcard = pginfo->GetCardID();
m_inputref[pginfo->GetInputID()]++;
if (pginfo->GetInputID() > m_maxinput)
m_maxinput = pginfo->GetInputID();
QDate date = (pginfo->GetRecordingStartTime()).date();
m_recgroupList[date].push_back(pginfo);
m_recgroupList[date].setAutoDelete(false);
m_recgroupList[m_defaultGroup].push_back(pginfo);
++pit;
}
else
{
pit = m_recList.erase(pit);
continue;
}
}
if (m_groupList)
{
QString label;
QMap<QDate,ProgramList>::iterator dateit = m_recgroupList.begin();
while (dateit != m_recgroupList.end())
{
if (dateit.key().isNull())
label = tr("All");
else
label = dateit.key().toString(m_dateFormat);
new MythUIButtonListItem(m_groupList, label,
qVariantFromValue(dateit.key()));
++dateit;
}
if (!m_recgroupList.contains(m_currentGroup))
m_groupList->SetValueByData(qVariantFromValue(m_currentGroup));
}
FillList();
//.........这里部分代码省略.........
示例8: OKPressed
void RecordingSelector::OKPressed()
{
// loop though selected recordings and add them to the list
ProgramInfo *p;
ArchiveItem *a;
// remove any items that have been removed from the list
QList<ArchiveItem *> tempAList;
for (int x = 0; x < m_archiveList->size(); x++)
{
a = m_archiveList->at(x);
bool found = false;
for (int y = 0; y < m_selectedList.size(); y++)
{
p = m_selectedList.at(y);
if (a->type != "Recording" || a->filename == p->GetPlaybackURL(false, true))
{
found = true;
break;
}
}
if (!found)
tempAList.append(a);
}
for (int x = 0; x < tempAList.size(); x++)
m_archiveList->removeAll(tempAList.at(x));
// remove any items that are already in the list
QList<ProgramInfo *> tempSList;
for (int x = 0; x < m_selectedList.size(); x++)
{
p = m_selectedList.at(x);
for (int y = 0; y < m_archiveList->size(); y++)
{
a = m_archiveList->at(y);
if (a->filename == p->GetPlaybackURL(false, true))
{
tempSList.append(p);
break;
}
}
}
for (int x = 0; x < tempSList.size(); x++)
m_selectedList.removeAll(tempSList.at(x));
// add all that are left
for (int x = 0; x < m_selectedList.size(); x++)
{
p = m_selectedList.at(x);
a = new ArchiveItem;
a->type = "Recording";
a->title = p->GetTitle();
a->subtitle = p->GetSubtitle();
a->description = p->GetDescription();
a->startDate = p->GetScheduledStartTime().toString("dd MMM yy");
a->startTime = p->GetScheduledStartTime().toString("(hh:mm)");
a->size = p->GetFilesize();
a->filename = p->GetPlaybackURL(false, true);
a->hasCutlist = p->HasCutlist();
a->useCutlist = false;
a->duration = 0;
a->cutDuration = 0;
a->videoWidth = 0;
a->videoHeight = 0;
a->fileCodec = "";
a->videoCodec = "";
a->encoderProfile = NULL;
a->editedDetails = false;
m_archiveList->append(a);
}
emit haveResult(true);
Close();
}
示例9: updateRecordingList
void RecordingSelector::updateRecordingList(void)
{
if (!m_recordingList || m_recordingList->empty())
return;
m_recordingButtonList->Reset();
if (m_categorySelector)
{
ProgramInfo *p;
vector<ProgramInfo *>::iterator i = m_recordingList->begin();
for ( ; i != m_recordingList->end(); ++i)
{
p = *i;
if (p->GetTitle() == m_categorySelector->GetValue() ||
m_categorySelector->GetValue() == tr("All Recordings"))
{
MythUIButtonListItem* item = new MythUIButtonListItem(
m_recordingButtonList,
p->GetTitle() + " ~ " +
p->GetScheduledStartTime().toLocalTime()
.toString("dd MMM yy (hh:mm)"));
item->setCheckable(true);
if (m_selectedList.indexOf((ProgramInfo *) p) != -1)
{
item->setChecked(MythUIButtonListItem::FullChecked);
}
else
{
item->setChecked(MythUIButtonListItem::NotChecked);
}
QString title = p->GetTitle();
QString subtitle = p->GetSubtitle();
QDateTime recstartts = p->GetScheduledStartTime();
QDateTime recendts = p->GetScheduledEndTime();
QString timedate = QString("%1 - %2")
.arg(MythDate::toString(recstartts,MythDate::kDateTimeFull))
.arg(MythDate::toString(recendts, MythDate::kTime));
uint season = p->GetSeason();
uint episode = p->GetEpisode();
QString seasone, seasonx;
if (season && episode)
{
seasone = QString("s%1e%2")
.arg(format_season_and_episode(season, 2))
.arg(format_season_and_episode(episode, 2));
seasonx = QString("%1x%2")
.arg(format_season_and_episode(season, 1))
.arg(format_season_and_episode(episode, 2));
}
item->SetText(title, "title");
item->SetText(subtitle, "subtitle");
if (subtitle.isEmpty())
item->SetText(title, "titlesubtitle");
else
item->SetText(title + " - \"" + subtitle + '"',
"titlesubtitle");
item->SetText(timedate, "timedate");
item->SetText(p->GetDescription(), "description");
item->SetText(formatSize(p->GetFilesize() / 1024),
"filesize_str");
item->SetText(QString::number(season), "season");
item->SetText(QString::number(episode), "episode");
item->SetText(seasonx, "00x00");
item->SetText(seasone, "s00e00");
item->DisplayState(p->HasCutlist() ? "yes" : "no", "cutlist");
item->SetData(qVariantFromValue(p));
}
qApp->processEvents();
}
}
m_recordingButtonList->SetItemCurrent(m_recordingButtonList->GetItemFirst());
titleChanged(m_recordingButtonList->GetItemCurrent());
}