From a3cdcf5738b2b1ea7d29e0e4c1026184a43b19ce Mon Sep 17 00:00:00 2001 From: John Poet Date: Sun, 18 Aug 2013 17:24:56 -0600 Subject: [PATCH] Don't show the "Preset tuner to channel" option in mythtv-setup, if the input type is not a tuner. Fixes #11761 --- mythtv/libs/libmythtv/cardutil.cpp | 9 ++++----- mythtv/libs/libmythtv/videosource.cpp | 9 +++++---- mythtv/libs/libmythtv/videosource.h | 3 +-- 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/mythtv/libs/libmythtv/cardutil.cpp b/mythtv/libs/libmythtv/cardutil.cpp index aded339843c..04f759babae 100644 --- a/mythtv/libs/libmythtv/cardutil.cpp +++ b/mythtv/libs/libmythtv/cardutil.cpp @@ -1109,7 +1109,7 @@ QString CardUtil::GetStartInput(uint nCardID) MSqlQuery query(MSqlQuery::InitCon()); query.prepare("SELECT inputname " "FROM cardinput " - "WHERE cardinput.cardid = :CARDID " + "WHERE cardinput.cardid = :CARDID " "ORDER BY livetvorder = 0, livetvorder, cardinputid " "LIMIT 1"); query.bindValue(":CARDID", nCardID); @@ -2072,7 +2072,6 @@ void CardUtil::GetCardInputs( vector &cardInputs) { QStringList inputs; - bool is_dtv = !IsEncoder(cardtype) && !IsUnscanable(cardtype); if (IsSingleInputCard(cardtype)) inputs += "MPEG2TS"; @@ -2084,7 +2083,7 @@ void CardUtil::GetCardInputs( QStringList::iterator it = inputs.begin(); for (; it != inputs.end(); ++it) { - CardInput *cardinput = new CardInput(is_dtv, false, false, cardid); + CardInput *cardinput = new CardInput(cardtype, false, cardid); cardinput->loadByInput(cardid, (*it)); inputLabels.push_back( dev_label + QString(" (%1) -> %2") @@ -2103,7 +2102,7 @@ void CardUtil::GetCardInputs( InputNames::const_iterator it; for (it = list.begin(); it != list.end(); ++it) { - CardInput *cardinput = new CardInput(is_dtv, true, false, cardid); + CardInput *cardinput = new CardInput(cardtype, false, cardid); cardinput->loadByInput(cardid, *it); inputLabels.push_back( dev_label + QString(" (%1) -> %2") @@ -2114,7 +2113,7 @@ void CardUtil::GetCardInputs( // plus add one "new" input if (needs_conf) { - CardInput *newcard = new CardInput(is_dtv, true, true, cardid); + CardInput *newcard = new CardInput(cardtype, true, cardid); QString newname = QString("DVBInput #%1").arg(list.size() + 1); newcard->loadByInput(cardid, newname); inputLabels.push_back(dev_label + " " + QObject::tr("New Input")); diff --git a/mythtv/libs/libmythtv/videosource.cpp b/mythtv/libs/libmythtv/videosource.cpp index c533b00a6f1..f01a0baf2c7 100644 --- a/mythtv/libs/libmythtv/videosource.cpp +++ b/mythtv/libs/libmythtv/videosource.cpp @@ -2860,7 +2860,7 @@ class DishNetEIT : public CheckBoxSetting, public CardInputDBStorage }; }; -CardInput::CardInput(bool isDTVcard, bool isDVBcard, +CardInput::CardInput(const QString & cardtype, bool isNewInput, int _cardid) : id(new ID()), cardid(new CardID(*this)), @@ -2891,17 +2891,18 @@ CardInput::CardInput(bool isDTVcard, bool isDVBcard, basic->addChild(new InputDisplayName(*this)); basic->addChild(sourceid); - if (!isDTVcard) + if (CardUtil::IsEncoder(cardtype) || CardUtil::IsUnscanable(cardtype)) { basic->addChild(new ExternalChannelCommand(*this)); - basic->addChild(new PresetTuner(*this)); + if (!CardUtil::IsEncoder(cardtype)) + basic->addChild(new PresetTuner(*this)); } else { ConfigurationGroup *chgroup = new HorizontalConfigurationGroup(false, false, true, true); chgroup->addChild(new QuickTune(*this)); - if (isDVBcard) + if ("DVB" == cardtype) chgroup->addChild(new DishNetEIT(*this)); basic->addChild(chgroup); } diff --git a/mythtv/libs/libmythtv/videosource.h b/mythtv/libs/libmythtv/videosource.h index 1337c9188c9..005a59ea0ad 100644 --- a/mythtv/libs/libmythtv/videosource.h +++ b/mythtv/libs/libmythtv/videosource.h @@ -785,8 +785,7 @@ class CardInput : public QObject, public ConfigurationWizard { Q_OBJECT public: - CardInput(bool is_dtv_card, bool is_dvb_card, - bool is_new_input, int cardid); + CardInput(const QString & cardtype, bool is_new_input, int cardid); ~CardInput(); int getInputID(void) const { return id->intValue(); };