diff --git a/src/plugins/madde/maemodeployconfigurationwidget.cpp b/src/plugins/madde/maemodeployconfigurationwidget.cpp index 061e5178281dcf13ca242baec3f609ab852f3cb2..fc73329d1acb648316918b7f3165fa5407c1922f 100644 --- a/src/plugins/madde/maemodeployconfigurationwidget.cpp +++ b/src/plugins/madde/maemodeployconfigurationwidget.cpp @@ -147,7 +147,7 @@ void MaemoDeployConfigurationWidget::addIcon() { DeployableFilesPerProFile * const proFileInfo = m_remoteLinuxWidget->currentModel(); const int iconDim - = MaemoGlobal::applicationIconSize(deployConfiguration()->target()->supportedDeviceType()); + = MaemoGlobal::applicationIconSize(deployConfiguration()->target()); const QString origFilePath = QFileDialog::getOpenFileName(this, tr("Choose Icon (will be scaled to %1x%1 pixels, if necessary)").arg(iconDim), proFileInfo->projectDir(), QLatin1String("(*.png)")); @@ -212,7 +212,7 @@ QString MaemoDeployConfigurationWidget::remoteIconFilePath(const DeployableFiles QString MaemoDeployConfigurationWidget::remoteIconDir() const { return QString::fromLatin1("/usr/share/icons/hicolor/%1x%1/apps") - .arg(MaemoGlobal::applicationIconSize(deployConfiguration()->target()->supportedDeviceType())); + .arg(MaemoGlobal::applicationIconSize(deployConfiguration()->target())); } } // namespace Internal diff --git a/src/plugins/madde/maemoglobal.cpp b/src/plugins/madde/maemoglobal.cpp index 4d307a519731c9835e8d669d49849cdaebf427b6..7ff3b4851f747a0d551052af67d47e61f83c3a17 100644 --- a/src/plugins/madde/maemoglobal.cpp +++ b/src/plugins/madde/maemoglobal.cpp @@ -33,6 +33,7 @@ #include "maemoconstants.h" #include "maemoqemumanager.h" +#include "qt4maemotarget.h" #include <qt4projectmanager/qt4projectmanagerconstants.h> #include <qtsupport/baseqtversion.h> @@ -127,9 +128,9 @@ QString MaemoGlobal::devrootshPath() return QLatin1String("/usr/lib/mad-developer/devrootsh"); } -int MaemoGlobal::applicationIconSize(const QString &deviceType) +int MaemoGlobal::applicationIconSize(const ProjectExplorer::Target *target) { - return deviceType == QLatin1String(HarmattanOsType) ? 80 : 64; + return qobject_cast<const Qt4HarmattanTarget *>(target) ? 80 : 64; } QString MaemoGlobal::remoteSudo(const QString &deviceType, const QString &uname) diff --git a/src/plugins/madde/maemoglobal.h b/src/plugins/madde/maemoglobal.h index e2c2c62d16aef39df6bf90b9c211bc6f38d2d189..9dfc1b27422f1f4879f73a5fe58b91ba5c8851df 100644 --- a/src/plugins/madde/maemoglobal.h +++ b/src/plugins/madde/maemoglobal.h @@ -45,13 +45,9 @@ class QProcess; class QString; QT_END_NAMESPACE -namespace QtSupport { -class BaseQtVersion; -} - -namespace RemoteLinux { -class LinuxDeviceConfiguration; -} +namespace QtSupport { class BaseQtVersion; } +namespace RemoteLinux { class LinuxDeviceConfiguration; } +namespace ProjectExplorer { class Target; } namespace Madde { namespace Internal { @@ -97,7 +93,7 @@ public: static QString homeDirOnDevice(const QString &uname); static QString devrootshPath(); - static int applicationIconSize(const QString &deviceType); + static int applicationIconSize(const ProjectExplorer::Target *target); static QString remoteSudo(const QString &deviceType, const QString &uname); static QString remoteSourceProfilesCommand(); static Utils::PortList freePorts(const QSharedPointer<const RemoteLinux::LinuxDeviceConfiguration> &devConf, diff --git a/src/plugins/madde/qt4maemotarget.cpp b/src/plugins/madde/qt4maemotarget.cpp index 7b6964a98fa58364d1d609076088ebbe3cd42532..b64eb3bfd9fc5bf76a36cd024860ee5a020b42fc 100644 --- a/src/plugins/madde/qt4maemotarget.cpp +++ b/src/plugins/madde/qt4maemotarget.cpp @@ -122,8 +122,8 @@ bool adaptTagValue(QByteArray &document, const QByteArray &fieldName, AbstractQt4MaemoTarget::AbstractQt4MaemoTarget(Qt4Project *parent, const QString &id, - const QString &supportedDeviceType, const QString &qmakeScope) : - AbstractEmbeddedLinuxTarget(parent, id, supportedDeviceType), + const QString &qmakeScope) : + AbstractEmbeddedLinuxTarget(parent, id), m_filesWatcher(new Utils::FileSystemWatcher(this)), m_deploymentSettingsAssistant(new DeploymentSettingsAssistant(qmakeScope, QLatin1String("/opt"), deploymentInfo())), @@ -375,8 +375,8 @@ void AbstractQt4MaemoTarget::raiseError(const QString &reason) } AbstractDebBasedQt4MaemoTarget::AbstractDebBasedQt4MaemoTarget(Qt4Project *parent, - const QString &id, const QString &supportedDeviceType, const QString &qmakeScope) - : AbstractQt4MaemoTarget(parent, id, supportedDeviceType, qmakeScope) + const QString &id, const QString &qmakeScope) + : AbstractQt4MaemoTarget(parent, id, qmakeScope) { } @@ -958,8 +958,8 @@ QString AbstractDebBasedQt4MaemoTarget::shortDayOfWeekName(const QDateTime &dt) AbstractRpmBasedQt4MaemoTarget::AbstractRpmBasedQt4MaemoTarget(Qt4Project *parent, - const QString &id, const QString &supportedDeviceType, const QString &qmakeScope) - : AbstractQt4MaemoTarget(parent, id, supportedDeviceType, qmakeScope) + const QString &id, const QString &qmakeScope) + : AbstractQt4MaemoTarget(parent, id, qmakeScope) { } @@ -1124,14 +1124,18 @@ bool AbstractRpmBasedQt4MaemoTarget::setValueForTag(const QByteArray &tag, } Qt4Maemo5Target::Qt4Maemo5Target(Qt4Project *parent, const QString &id) - : AbstractDebBasedQt4MaemoTarget(parent, id, QLatin1String(Maemo5OsType), - QLatin1String("maemo5")) + : AbstractDebBasedQt4MaemoTarget(parent, id, QLatin1String("maemo5")) { setDisplayName(defaultDisplayName()); } Qt4Maemo5Target::~Qt4Maemo5Target() {} +bool Qt4Maemo5Target::supportsDevice(const ProjectExplorer::IDevice::ConstPtr &device) const +{ + return device->type() == QLatin1String(Maemo5OsType); +} + QString Qt4Maemo5Target::defaultDisplayName() { return QApplication::translate("Qt4ProjectManager::Qt4Target", "Maemo5", @@ -1164,14 +1168,18 @@ QByteArray Qt4Maemo5Target::defaultSection() const } Qt4HarmattanTarget::Qt4HarmattanTarget(Qt4Project *parent, const QString &id) - : AbstractDebBasedQt4MaemoTarget(parent, id, QLatin1String(HarmattanOsType), - QLatin1String("contains(MEEGO_EDITION,harmattan)")) + : AbstractDebBasedQt4MaemoTarget(parent, id, QLatin1String("contains(MEEGO_EDITION,harmattan)")) { setDisplayName(defaultDisplayName()); } Qt4HarmattanTarget::~Qt4HarmattanTarget() {} +bool Qt4HarmattanTarget::supportsDevice(const ProjectExplorer::IDevice::ConstPtr &device) const +{ + return device->type() == QLatin1String(HarmattanOsType); +} + QString Qt4HarmattanTarget::defaultDisplayName() { return QApplication::translate("Qt4ProjectManager::Qt4Target", "Harmattan", @@ -1235,7 +1243,7 @@ QByteArray Qt4HarmattanTarget::defaultSection() const Qt4MeegoTarget::Qt4MeegoTarget(Qt4Project *parent, const QString &id) - : AbstractRpmBasedQt4MaemoTarget(parent, id, QLatin1String(MeeGoOsType), + : AbstractRpmBasedQt4MaemoTarget(parent, id, QLatin1String("!isEmpty(MEEGO_VERSION_MAJOR):!contains(MEEGO_EDITION,harmattan)")) { setDisplayName(defaultDisplayName()); @@ -1243,6 +1251,11 @@ Qt4MeegoTarget::Qt4MeegoTarget(Qt4Project *parent, const QString &id) Qt4MeegoTarget::~Qt4MeegoTarget() {} +bool Qt4MeegoTarget::supportsDevice(const ProjectExplorer::IDevice::ConstPtr &device) const +{ + return device->type() == QLatin1String(MeeGoOsType); +} + QString Qt4MeegoTarget::defaultDisplayName() { return QApplication::translate("Qt4ProjectManager::Qt4Target", diff --git a/src/plugins/madde/qt4maemotarget.h b/src/plugins/madde/qt4maemotarget.h index ef35b9569a8d0feba0b7379a040642c390c9340d..3be2877d96bc46233e5e689671c1f66066e726c2 100644 --- a/src/plugins/madde/qt4maemotarget.h +++ b/src/plugins/madde/qt4maemotarget.h @@ -57,7 +57,7 @@ class AbstractQt4MaemoTarget : public RemoteLinux::AbstractEmbeddedLinuxTarget Q_OBJECT public: explicit AbstractQt4MaemoTarget(Qt4ProjectManager::Qt4Project *parent, const QString &id, - const QString &supportedDeviceType, const QString &qmakeScope); + const QString &qmakeScope); virtual ~AbstractQt4MaemoTarget(); void createApplicationProFiles(bool reparse); @@ -120,7 +120,7 @@ class AbstractDebBasedQt4MaemoTarget : public AbstractQt4MaemoTarget Q_OBJECT public: AbstractDebBasedQt4MaemoTarget(Qt4ProjectManager::Qt4Project *parent, const QString &id, - const QString &supportedDeviceType, const QString &qmakeScope); + const QString &qmakeScope); ~AbstractDebBasedQt4MaemoTarget(); QString debianDirPath() const; @@ -193,7 +193,7 @@ class AbstractRpmBasedQt4MaemoTarget : public AbstractQt4MaemoTarget Q_OBJECT public: AbstractRpmBasedQt4MaemoTarget(Qt4ProjectManager::Qt4Project *parent, const QString &id, - const QString &supportedDeviceType, const QString &qmakeScope); + const QString &qmakeScope); ~AbstractRpmBasedQt4MaemoTarget(); virtual bool allowsRemoteMounts() const { return false; } @@ -240,6 +240,8 @@ public: const QString &id); virtual ~Qt4Maemo5Target(); + virtual bool supportsDevice(const QSharedPointer<const ProjectExplorer::IDevice> &device) const; + virtual bool allowsRemoteMounts() const { return true; } virtual bool allowsPackagingDisabling() const { return true; } virtual bool allowsQmlDebugging() const { return false; } @@ -264,6 +266,8 @@ public: const QString &id); virtual ~Qt4HarmattanTarget(); + virtual bool supportsDevice(const QSharedPointer<const ProjectExplorer::IDevice> &device) const; + virtual bool allowsRemoteMounts() const { return false; } virtual bool allowsPackagingDisabling() const { return false; } virtual bool allowsQmlDebugging() const { return true; } @@ -289,6 +293,7 @@ public: explicit Qt4MeegoTarget(Qt4ProjectManager::Qt4Project *parent, const QString &id); virtual ~Qt4MeegoTarget(); + virtual bool supportsDevice(const QSharedPointer<const ProjectExplorer::IDevice> &device) const; static QString defaultDisplayName(); private: virtual QString specFileName() const; diff --git a/src/plugins/remotelinux/abstractembeddedlinuxtarget.cpp b/src/plugins/remotelinux/abstractembeddedlinuxtarget.cpp index 0ecc01237843401147838272f70929c770634858..78f7eb775b3dcac5a453f441d3b7b233af541b17 100644 --- a/src/plugins/remotelinux/abstractembeddedlinuxtarget.cpp +++ b/src/plugins/remotelinux/abstractembeddedlinuxtarget.cpp @@ -41,14 +41,11 @@ using namespace Qt4ProjectManager; namespace RemoteLinux { -AbstractEmbeddedLinuxTarget::AbstractEmbeddedLinuxTarget(Qt4Project *parent, const QString &id, - const QString &supportedDeviceType) : +AbstractEmbeddedLinuxTarget::AbstractEmbeddedLinuxTarget(Qt4Project *parent, const QString &id) : Qt4BaseTarget(parent, id), m_buildConfigurationFactory(new Qt4BuildConfigurationFactory(this)), - m_supportedDeviceType(supportedDeviceType), m_deploymentInfo(new DeploymentInfo(this)), - m_deviceConfigModel(new Internal::TypeSpecificDeviceConfigurationListModel(supportedDeviceType, - this)) + m_deviceConfigModel(new Internal::TypeSpecificDeviceConfigurationListModel(this)) { } diff --git a/src/plugins/remotelinux/abstractembeddedlinuxtarget.h b/src/plugins/remotelinux/abstractembeddedlinuxtarget.h index 6b1869cb0993f519d7f6fd90a548c7b25c614713..f6ff1fe8d73fc509cf09706dce379a3b4bf989e7 100644 --- a/src/plugins/remotelinux/abstractembeddedlinuxtarget.h +++ b/src/plugins/remotelinux/abstractembeddedlinuxtarget.h @@ -36,9 +36,13 @@ #include <qt4projectmanager/qt4target.h> +#include <QSharedPointer> #include <QString> -namespace ProjectExplorer { class IBuildConfigurationFactory; } +namespace ProjectExplorer { +class IBuildConfigurationFactory; +class IDevice; +} namespace Qt4ProjectManager { class Qt4BuildConfigurationFactory; } namespace RemoteLinux { @@ -49,20 +53,21 @@ class REMOTELINUX_EXPORT AbstractEmbeddedLinuxTarget : public Qt4ProjectManager: { Q_OBJECT public: - AbstractEmbeddedLinuxTarget(Qt4ProjectManager::Qt4Project *parent, const QString &id, - const QString &supportedDeviceType); + AbstractEmbeddedLinuxTarget(Qt4ProjectManager::Qt4Project *parent, const QString &id); ProjectExplorer::IBuildConfigurationFactory *buildConfigurationFactory() const; - QString supportedDeviceType() const { return m_supportedDeviceType; } DeploymentInfo *deploymentInfo() const { return m_deploymentInfo; } Internal::TypeSpecificDeviceConfigurationListModel *deviceConfigModel() const { return m_deviceConfigModel; } + virtual bool supportsDevice(const QSharedPointer<const ProjectExplorer::IDevice> &device) const = 0; + +signals: + void supportedDevicesChanged(); private: Qt4ProjectManager::Qt4BuildConfigurationFactory * const m_buildConfigurationFactory; - const QString m_supportedDeviceType; DeploymentInfo * const m_deploymentInfo; Internal::TypeSpecificDeviceConfigurationListModel * const m_deviceConfigModel; }; diff --git a/src/plugins/remotelinux/genericembeddedlinuxtarget.cpp b/src/plugins/remotelinux/genericembeddedlinuxtarget.cpp index a20ed770fcb703229acff748f20a5e0e7f4c81cc..db0371b7a21ba7d7c7fe3f2a5cb76b1665d5d152 100644 --- a/src/plugins/remotelinux/genericembeddedlinuxtarget.cpp +++ b/src/plugins/remotelinux/genericembeddedlinuxtarget.cpp @@ -36,6 +36,7 @@ #include "remotelinuxrunconfiguration.h" #include <projectexplorer/customexecutablerunconfiguration.h> +#include <projectexplorer/devicesupport/idevice.h> #include <qt4projectmanager/qt4buildconfiguration.h> #include <qt4projectmanager/qt4nodes.h> #include <qt4projectmanager/qt4project.h> @@ -47,8 +48,7 @@ namespace RemoteLinux { namespace Internal { GenericEmbeddedLinuxTarget::GenericEmbeddedLinuxTarget(Qt4ProjectManager::Qt4Project *parent, - const QString &id) : - AbstractEmbeddedLinuxTarget(parent, id, QLatin1String(Constants::GenericLinuxOsType)) + const QString &id) : AbstractEmbeddedLinuxTarget(parent, id) { setDisplayName(tr("Embedded Linux")); } @@ -71,6 +71,11 @@ Utils::FileName GenericEmbeddedLinuxTarget::mkspec(const Qt4ProjectManager::Qt4B return version->mkspec(); } +bool GenericEmbeddedLinuxTarget::supportsDevice(const ProjectExplorer::IDevice::ConstPtr &device) const +{ + return device->type() == QLatin1String(Constants::GenericLinuxOsType); +} + void GenericEmbeddedLinuxTarget::createApplicationProFiles(bool reparse) { if (!reparse) diff --git a/src/plugins/remotelinux/genericembeddedlinuxtarget.h b/src/plugins/remotelinux/genericembeddedlinuxtarget.h index 5850f4d142f3c52a3c3ff16b09dd97ef72714069..cdb52f20340892d64a7190ba4cc6647153e466b2 100644 --- a/src/plugins/remotelinux/genericembeddedlinuxtarget.h +++ b/src/plugins/remotelinux/genericembeddedlinuxtarget.h @@ -50,6 +50,7 @@ public: void createApplicationProFiles(bool reparse); QList<ProjectExplorer::RunConfiguration *> runConfigurationsForNode(ProjectExplorer::Node *n); Utils::FileName mkspec(const Qt4ProjectManager::Qt4BuildConfiguration *bc) const; + bool supportsDevice(const QSharedPointer<const ProjectExplorer::IDevice> &device) const; private: friend class EmbeddedLinuxTargetFactory; diff --git a/src/plugins/remotelinux/remotelinuxdeployconfiguration.cpp b/src/plugins/remotelinux/remotelinuxdeployconfiguration.cpp index c93de9ecab5794c99123e8c157ed6fc47932e531..7c77a918f6449f07ee2524f443f6c7f841eae62d 100644 --- a/src/plugins/remotelinux/remotelinuxdeployconfiguration.cpp +++ b/src/plugins/remotelinux/remotelinuxdeployconfiguration.cpp @@ -82,7 +82,7 @@ RemoteLinuxDeployConfiguration::~RemoteLinuxDeployConfiguration() void RemoteLinuxDeployConfiguration::initialize() { d->deviceConfiguration = target()->deviceConfigModel()->defaultDeviceConfig(); - connect(target()->deviceConfigModel(), SIGNAL(updated()), + connect(target()->deviceConfigModel(), SIGNAL(modelReset()), SLOT(handleDeviceConfigurationListUpdated())); } diff --git a/src/plugins/remotelinux/typespecificdeviceconfigurationlistmodel.cpp b/src/plugins/remotelinux/typespecificdeviceconfigurationlistmodel.cpp index 97de7ac82b2f266e721b7904255a9befaff461ee..3b177f5b4f63ce7111e59fbad68a10c3e6e8b311 100644 --- a/src/plugins/remotelinux/typespecificdeviceconfigurationlistmodel.cpp +++ b/src/plugins/remotelinux/typespecificdeviceconfigurationlistmodel.cpp @@ -31,20 +31,22 @@ **************************************************************************/ #include "typespecificdeviceconfigurationlistmodel.h" -#include "remotelinux_constants.h" +#include "abstractembeddedlinuxtarget.h" #include <projectexplorer/devicesupport/devicemanager.h> +#include <utils/qtcassert.h> using namespace ProjectExplorer; namespace RemoteLinux { namespace Internal { -TypeSpecificDeviceConfigurationListModel::TypeSpecificDeviceConfigurationListModel(const QString &deviceType, - QObject *parent) : QAbstractListModel(parent), m_targetDeviceType(deviceType) +TypeSpecificDeviceConfigurationListModel::TypeSpecificDeviceConfigurationListModel(AbstractEmbeddedLinuxTarget *target) + : QAbstractListModel(target) { const DeviceManager * const devConfs = DeviceManager::instance(); - connect(devConfs, SIGNAL(updated()), this, SIGNAL(updated())); + connect(devConfs, SIGNAL(updated()), this, SIGNAL(modelReset())); + connect(target, SIGNAL(supportedDevicesChanged()), this, SIGNAL(modelReset())); } TypeSpecificDeviceConfigurationListModel::~TypeSpecificDeviceConfigurationListModel() @@ -58,10 +60,8 @@ int TypeSpecificDeviceConfigurationListModel::rowCount(const QModelIndex &parent int count = 0; const DeviceManager * const devConfs = DeviceManager::instance(); const int devConfsCount = devConfs->deviceCount(); - if (m_targetDeviceType == QLatin1String(Constants::GenericLinuxOsType)) - return devConfsCount; for (int i = 0; i < devConfsCount; ++i) { - if (devConfs->deviceAt(i)->type() == m_targetDeviceType) + if (target()->supportsDevice(devConfs->deviceAt(i))) ++count; } return count; @@ -75,7 +75,7 @@ QVariant TypeSpecificDeviceConfigurationListModel::data(const QModelIndex &index const LinuxDeviceConfiguration::ConstPtr &devConf = deviceAt(index.row()); Q_ASSERT(devConf); QString displayedName = devConf->displayName(); - if (devConf->type() == m_targetDeviceType && DeviceManager::instance() + if (target()->supportsDevice(devConf) && DeviceManager::instance() ->defaultDevice(devConf->type()) == devConf) { displayedName = tr("%1 (default)").arg(displayedName); } @@ -86,34 +86,34 @@ LinuxDeviceConfiguration::ConstPtr TypeSpecificDeviceConfigurationListModel::dev { int currentRow = -1; const DeviceManager * const devConfs = DeviceManager::instance(); - if (m_targetDeviceType == QLatin1String(Constants::GenericLinuxOsType)) - return devConfs->deviceAt(idx).staticCast<const LinuxDeviceConfiguration>(); const int devConfsCount = devConfs->deviceCount(); for (int i = 0; i < devConfsCount; ++i) { const IDevice::ConstPtr device = devConfs->deviceAt(i); - if (device->type() == m_targetDeviceType - || m_targetDeviceType == QLatin1String(Constants::GenericLinuxOsType)) { - if (++currentRow == idx) - return devConfs->deviceAt(i).staticCast<const LinuxDeviceConfiguration>(); - } + if (target()->supportsDevice(device) && ++currentRow == idx) + return device.staticCast<const LinuxDeviceConfiguration>(); } - Q_ASSERT(false); - return LinuxDeviceConfiguration::ConstPtr(); + QTC_ASSERT(false, return LinuxDeviceConfiguration::ConstPtr()); } LinuxDeviceConfiguration::ConstPtr TypeSpecificDeviceConfigurationListModel::defaultDeviceConfig() const { - return DeviceManager::instance()->defaultDevice(m_targetDeviceType) - .staticCast<const LinuxDeviceConfiguration>(); + const DeviceManager * const deviceManager = DeviceManager::instance(); + const int deviceCount = deviceManager->deviceCount(); + for (int i = 0; i < deviceCount; ++i) { + const IDevice::ConstPtr device = deviceManager->deviceAt(i); + if (target()->supportsDevice(device) + && deviceManager->defaultDevice(device->type()) == device) { + return device.staticCast<const LinuxDeviceConfiguration>(); + } + } + return LinuxDeviceConfiguration::ConstPtr(); } LinuxDeviceConfiguration::ConstPtr TypeSpecificDeviceConfigurationListModel::find(LinuxDeviceConfiguration::Id id) const { const IDevice::ConstPtr &devConf = DeviceManager::instance()->find(id); - if (devConf && (devConf->type() == m_targetDeviceType - || m_targetDeviceType == QLatin1String(Constants::GenericLinuxOsType))) { + if (devConf && target()->supportsDevice(devConf)) return devConf.staticCast<const LinuxDeviceConfiguration>(); - } return defaultDeviceConfig(); } @@ -127,5 +127,10 @@ int TypeSpecificDeviceConfigurationListModel::indexForInternalId(LinuxDeviceConf return -1; } +AbstractEmbeddedLinuxTarget *TypeSpecificDeviceConfigurationListModel::target() const +{ + return qobject_cast<AbstractEmbeddedLinuxTarget *>(QObject::parent()); +} + } // namespace Internal } // namespace RemoteLinux diff --git a/src/plugins/remotelinux/typespecificdeviceconfigurationlistmodel.h b/src/plugins/remotelinux/typespecificdeviceconfigurationlistmodel.h index b686b5a1a1a5247d0d27b67472ddb7d0c28d52ca..9fac87a802c30a89cab7f9905ae47460bdd07b4d 100644 --- a/src/plugins/remotelinux/typespecificdeviceconfigurationlistmodel.h +++ b/src/plugins/remotelinux/typespecificdeviceconfigurationlistmodel.h @@ -38,14 +38,14 @@ #include <QSharedPointer> namespace RemoteLinux { +class AbstractEmbeddedLinuxTarget; namespace Internal { class TypeSpecificDeviceConfigurationListModel : public QAbstractListModel { Q_OBJECT public: - explicit TypeSpecificDeviceConfigurationListModel(const QString &deviceType, - QObject *parent = 0); + explicit TypeSpecificDeviceConfigurationListModel(AbstractEmbeddedLinuxTarget *target); ~TypeSpecificDeviceConfigurationListModel(); virtual int rowCount(const QModelIndex &parent = QModelIndex()) const; @@ -57,11 +57,8 @@ public: QSharedPointer<const LinuxDeviceConfiguration> find(LinuxDeviceConfiguration::Id id) const; int indexForInternalId(LinuxDeviceConfiguration::Id id) const; -signals: - void updated(); - private: - const QString m_targetDeviceType; + AbstractEmbeddedLinuxTarget * target() const; }; } // namespace Internal