void Controller::unregisterProvider( const ProviderPtr &provider ) { disconnect( provider.data(), 0, this, 0 ); if( m_config->providerKnown( provider->id() ) ) { m_config->updateProvider( provider->id(), provider->prettyName(), provider->icon(), /* online */ false ); m_config->save(); } m_providers.removeAll( provider ); }
void TextureLodScheduler::textureRegistered(ProviderPtr data) { auto resourceIt = _textureResources.find(data->uuid()); TextureResourceInfo* resource = nullptr; if (resourceIt == _textureResources.end()) { auto& resourceBase = registerResource(data); auto newResourceIt = _textureResources.insert(std::make_pair( resourceBase.uuid(), TextureResourceInfo() )); auto& newResource = newResourceIt.first->second; newResource.base = &resourceBase; resource = &newResource; } else { resource = &resourceIt->second; } }
inline void indices(std::shared_ptr<render::IndexBuffer> indices) { _indexBuffer = indices; _data->set("indices", indices); }
void Controller::registerProvider( const ProviderPtr &provider ) { QString id = provider->id(); bool enabled = false; if( m_config->providerKnown( id ) ) enabled = m_config->providerEnabled( id, false ); else { switch( provider->defaultPreference() ) { case Provider::Never: case Provider::NoByDefault: enabled = false; break; case Provider::Ask: { QString text = i18nc( "%1 is collection name", "%1 has an ability to " "synchronize track meta-data such as play count or rating " "with other collections. Do you want to keep %1 synchronized?\n\n" "You can always change the decision in Amarok configuration.", provider->prettyName() ); enabled = KMessageBox::questionYesNo( The::mainWindow(), text ) == KMessageBox::Yes; break; } case Provider::YesByDefault: enabled = true; break; } } // don't tell config about Never-by-default providers if( provider->defaultPreference() != Provider::Never ) { m_config->updateProvider( id, provider->prettyName(), provider->icon(), true, enabled ); m_config->save(); } m_providers.append( provider ); connect( provider.data(), SIGNAL(updated()), SLOT(slotProviderUpdated()) ); if( enabled ) delayedStartSynchronization(); }
inline bool hasVertexAttribute(const std::string& vertexAttributeName) const { return _data->hasProperty(vertexAttributeName); }
inline const std::string& uuid() const { return data->uuid(); }
KConfigGroup ImporterManager::providerConfig( const ProviderPtr &provider ) const { return providerConfig( provider->id() ); }