void Style::addLayer(std::unique_ptr<StyleLayer> layer, optional<std::string> before) { if (SymbolLayer* symbolLayer = layer->as<SymbolLayer>()) { if (!symbolLayer->spriteAtlas) { symbolLayer->spriteAtlas = spriteAtlas.get(); } } if (CustomLayer* customLayer = layer->as<CustomLayer>()) { customLayer->initialize(); } layers.emplace(before ? findLayer(*before) : layers.end(), std::move(layer)); }
c2DLayer* cSDL2DSceneManager::addLayer(std::string Name) { c2DLayer* Layer = findLayer(Name); if(!Layer) { Layer = new c2DLayer(); Layer->m_Name=Name; m_Layers.push_back(Layer); } return Layer; }
void QgsProjectBadLayerGuiHandler::findLayers( QString const & fileFilters, QList<QDomNode> const & layerNodes ) { for ( QList<QDomNode>::const_iterator i = layerNodes.begin(); i != layerNodes.end(); ++i ) { if ( findLayer( fileFilters, *i ) ) { // If findLayer returns true, the user hit Cancel All button break; } } } // findLayers
void QgsLayerTree::setCustomLayerOrder( const QStringList &customLayerOrder ) { QList<QgsMapLayer *> layers; for ( const auto &layerId : customLayerOrder ) { QgsLayerTreeLayer *nodeLayer = findLayer( layerId ); if ( nodeLayer ) { // configuration from 2.x projects might have non spatial layers QgsMapLayer *layer = nodeLayer->layer(); if ( !layer || !layer->isSpatial() ) { continue; } layers.append( layer ); } } setCustomLayerOrder( layers ); }
StyleLayer* Style::getLayer(const std::string& id) const { auto it = findLayer(id); return it != layers.end() ? it->get() : nullptr; }
void Style::removeLayer(const std::string& id) { auto it = findLayer(id); if (it == layers.end()) throw std::runtime_error("no such layer"); layers.erase(it); }
void Style::addLayer(util::ptr<StyleLayer> layer, const std::string& before) { layers.emplace(findLayer(before), std::move(layer)); }