예제 #1
0
void DataSettingsObject::setController(QObject *controller)
{
    Q_D(DataSettingsObject);
    if (d->controller != controller) {
        d->controller = controller;
        emit controllerChanged(controller);
        setControllerImpl(controller);
    }
}
예제 #2
0
void NowPlaying::findPlayer()
{
    QStringList players = dataEngine("nowplaying")->sources();
    kDebug() << "Looking for players.  Possibilities:" << players;
    if (players.isEmpty()) {
        m_state = NoPlayer;
        m_watchingPlayer.clear();
        delete m_controller;
        m_controller = 0;

        emit stateChanged(m_state);
        emit controllerChanged(0);
        update();
    } else {
        m_watchingPlayer = players.first();

        delete m_controller;
        m_controller = dataEngine("nowplaying")->serviceForSource(m_watchingPlayer);
        m_controller->setParent(this);
        emit controllerChanged(m_controller);
        kDebug() << "Installing" << m_watchingPlayer << "as watched player";
        dataEngine("nowplaying")->connectSource(m_watchingPlayer, this, 999);
    }
}
예제 #3
0
void NowPlaying::playerAdded(const QString &name)
{
    kDebug() << "Player" << name << "added";
    if (m_watchingPlayer == "players") {
        //findPlayer();
        kDebug() << "Installing" << name << "as watched player";
        m_watchingPlayer = name;

        delete m_controller;
        m_controller = dataEngine("nowplaying")->serviceForSource(m_watchingPlayer);
        m_controller->setParent(this);
        emit controllerChanged(m_controller);
        dataEngine("nowplaying")->connectSource(m_watchingPlayer, this, 500);
    }
}