MCPcopy Create free account
hub / github.com/KDE/krita / process

Method process

plugins/python/channels2layers/channels2layers.py:1232–1471  ·  view source on GitHub ↗

Process given layer with current options

(self, pDocument, pOriginalLayer, pProgress)

Source from the content-addressed store, hash-verified

1230
1231
1232 def process(self, pDocument, pOriginalLayer, pProgress):
1233 """Process given layer with current options"""
1234
1235 self.layerNum = 0
1236 document = pDocument
1237 originalLayer = pOriginalLayer
1238 parentGroupLayer = None
1239 currentProcessedLayer = None
1240 originalLayerIsVisible = originalLayer.visible()
1241
1242
1243 def getLayerByName(parent, value):
1244 """search and return a layer by name, within given parent group"""
1245 if parent == None:
1246 return document.nodeByName(value)
1247
1248 for layer in parent.childNodes():
1249 if layer.name() == value:
1250 return layer
1251
1252 return None
1253
1254
1255 def duplicateLayer(currentProcessedLayer, value):
1256 """Duplicate layer from given name
1257 New layer become active layer
1258 """
1259
1260 newLayer = None
1261 srcLayer = None
1262 srcName = re.match("^@(.*)", value)
1263
1264 if not srcName is None:
1265 # reference to a specific layer
1266 if srcName[1] == 'original':
1267 # original layer currently processed
1268 srcLayer = originalLayer
1269 else:
1270 # a color layer previously built (and finished)
1271 srcLayer = getLayerByName(parentGroupLayer, parseLayerName(self.__outputOptions['layerColorName'], srcName[1]))
1272 else:
1273 # a layer with a fixed name
1274 srcLayer = document.nodeByName(parseLayerName(value, ''))
1275
1276
1277 if not srcLayer is None:
1278 newLayer = srcLayer.duplicate()
1279
1280 self.layerNum+=1
1281 newLayer.setName("c2l-w{0}".format(self.layerNum))
1282
1283 parentGroupLayer.addChildNode(newLayer, currentProcessedLayer)
1284 return newLayer
1285 else:
1286 return None
1287
1288
1289 def newLayer(currentProcessedLayer, value):

Callers 15

buildPreviewMethod · 0.95
runMethod · 0.95
finishRectMethod · 0.45
addPathShapeMethod · 0.45
finishOutlineMethod · 0.45
finishSelectionActionMethod · 0.45
finishPolylineMethod · 0.45
finishRectMethod · 0.45
applyFilterMethod · 0.45
testFilterSrcNotIsDevFunction · 0.45
testFilterFunction · 0.45

Calls 12

progressNextMethod · 0.95
mergeDownFunction · 0.85
createGroupLayerMethod · 0.80
addChildNodeMethod · 0.80
rootNodeMethod · 0.80
refreshProjectionMethod · 0.80
visibleMethod · 0.45
setRangeMethod · 0.45
setVisibleMethod · 0.45
setNameMethod · 0.45
removeMethod · 0.45
setActiveNodeMethod · 0.45

Tested by 5

applyFilterMethod · 0.36
testFilterSrcNotIsDevFunction · 0.36
testFilterFunction · 0.36
testFilterWithSelectionsFunction · 0.36