[mythtv] Some tiny cleanup code
Anduin Withers
awithers at anduin.com
Sun Aug 10 14:40:59 EDT 2003
Back when I was preparing to attack a problem I was having with the rankings
I made some tiny code cleaning changes to rankprograms.cpp.
--
Anduin Withers
-------------- next part --------------
Index: rankprograms.cpp
===================================================================
RCS file: /var/lib/mythcvs/mythtv/programs/mythfrontend/rankprograms.cpp,v
retrieving revision 1.7
diff -u -r1.7 rankprograms.cpp
--- rankprograms.cpp 4 Aug 2003 21:42:16 -0000 1.7
+++ rankprograms.cpp 10 Aug 2003 20:37:32 -0000
@@ -74,6 +74,18 @@
return(*this);
}
+namespace {
+ QString makeProgramInfoUniqueKey(const QString &title,
+ const QString &chanid, const QDateTime &startts) {
+ return title + ":" + chanid + ":" + startts.toString(Qt::ISODate);
+ }
+
+ // even cooler might be to have this part of ProgramInfo
+ QString makeProgramInfoUniqueKey(const ProgramInfo *pi) {
+ return makeProgramInfoUniqueKey(pi->title, pi->chanid, pi->startts);
+ }
+}
+
RankPrograms::RankPrograms(QSqlDatabase *ldb, MythMainWindow *parent,
const char *name)
: MythDialog(parent, name)
@@ -442,8 +454,7 @@
// also set the origRankData with new rank so we don't
// save to db again when we exit
- QString key = progInfo->title + ":" + progInfo->chanid + ":" +
- progInfo->startts.toString(Qt::ISODate);
+ QString key = makeProgramInfoUniqueKey(progInfo);
origRankData[key] = progInfo->rank;
SortList();
@@ -503,8 +514,7 @@
for (it = programData.begin(); it != programData.end(); ++it)
{
ProgramRankInfo *progInfo = &(it.data());
- QString key = progInfo->title + ":" + progInfo->chanid + ":" +
- progInfo->startts.toString(Qt::ISODate);
+ QString key = makeProgramInfoUniqueKey(progInfo);
// if this program's rank changed from when we entered
// save new value out to db
@@ -533,8 +543,7 @@
// save rank value in map so we don't have to save all program's
// rank values when we exit
- QString key = (*pgiter)->title + ":" + (*pgiter)->chanid + ":" +
- (*pgiter)->startts.toString(Qt::ISODate);
+ QString key = makeProgramInfoUniqueKey((*pgiter));
origRankData[key] = (*pgiter)->rank;
delete (*pgiter);
@@ -597,8 +606,7 @@
}
// make a key for each program
- QString keyA = title + ":" + chanid + ":" +
- startts.toString(Qt::ISODate);
+ QString keyA = makeProgramInfoUniqueKey(title, chanid, startts);
// find matching program in programData and set
// channelRank, recTypeRank and recType
@@ -606,8 +614,7 @@
for (it = programData.begin(); it != programData.end(); ++it)
{
ProgramRankInfo *progInfo = &(it.data());
- QString keyB = progInfo->title + ":" + progInfo->chanid + ":" +
- progInfo->startts.toString(Qt::ISODate);
+ QString keyB = makeProgramInfoUniqueKey(progInfo);
if(keyA == keyB)
{
progInfo->channelRank = channelRank;
@@ -757,10 +764,7 @@
{
ProgramRankInfo *progInfo = &(it.data());
- QString key = progInfo->title + ":" +
- progInfo->chanid + ":" +
- progInfo->startts.toString(Qt::ISODate);
-
+ QString key = makeProgramInfoUniqueKey(progInfo);
int progRank = progInfo->rank.toInt();
int finalRank = progRank + progInfo->channelRank +
progInfo->recTypeRank;
More information about the mythtv-dev
mailing list