def cbGetLayers(self, data): item = self.ui.mapList.item(0) widget = self.ui.mapList.itemWidget(item) layer = widget.layer cartoCSS = self.convert2CartoCSS(layer) cartoDBApi = CartoDBApi(self.currentUser, self.currentApiKey, self.currentMultiuser) layer1 = data['layers'][1] layer1['options']['tile_style'] = cartoCSS layer1["options"]["legend"] = None cartoDBApi.fetchContent.connect(self.showMessage) cartoDBApi.updateLayerInMap(self.currentViz['map_id'], layer1) for i in range(1, self.ui.mapList.count()): item = self.ui.mapList.item(i) widget = self.ui.mapList.itemWidget(item) layer = widget.layer qDebug('Agregando: {} en pos: {}'.format(layer.tableName(), i)) cartoCSS = self.convert2CartoCSS(layer) # cartoDBApi.fetchContent.connect(self.cbCreateViz) newLayer = copy.deepcopy(layer1) newLayer["options"]["table_name"] = layer.tableName() newLayer["options"]["tile_style"] = cartoCSS newLayer["options"]["order"] = i + 1 newLayer["order"] = i + 1 newLayer["id"] = None cartoDBApi.addLayerToMap(self.currentViz['map_id'], newLayer)
def cbGetLayers(self, data): """Callback for getLayers, update cartoCSS to map layers""" layer = self.cartoDBLayers[0] carto_css = self.convert2CartoCSS(layer) # pylint: disable-msg=E1101 cartodb_api = CartoDBApi(self.currentUser, self.currentApiKey, self.currentMultiuser) layer1 = data['layers'][1] if layer.isSQL: layer1["options"]["query"] = layer.sql else: layer1["options"]["query"] = "" qDebug('Layer {}'.format(layer.fullTableName())) layer1["options"]["table_name"] = layer.fullTableName() layer1['options']['tile_style'] = carto_css layer1["options"]["legend"] = None layer1["options"]["order"] = 1 layer1["order"] = 1 cartodb_api.fetchContent.connect(self.showMessage) cartodb_api.updateLayerInMap(self.currentViz['map_id'], layer1) for i, layer in enumerate(self.cartoDBLayers[1:len(self.cartoDBLayers)]): order = i + 2 qDebug('Agregando: {} en pos: {}'.format(layer.tableName(), order)) carto_css = self.convert2CartoCSS(layer) # cartodb_api.fetchContent.connect(self.cbCreateViz) new_layer = copy.deepcopy(layer1) new_layer["options"]["tile_style"] = carto_css new_layer["options"]["order"] = order new_layer["options"]["legend"] = None new_layer["order"] = order new_layer["id"] = None if layer.isSQL: new_layer["options"]["query"] = layer.sql else: qDebug('Layer {}'.format(layer.fullTableName())) new_layer["options"]["query"] = "" new_layer["options"]["table_name"] = layer.fullTableName() cartodb_api.addLayerToMap(self.currentViz['map_id'], new_layer)