QgsSymbolLayerV2* QgsVectorFieldSymbolLayer::clone() const { QgsSymbolLayerV2* clonedLayer = QgsVectorFieldSymbolLayer::create( properties() ); if ( mLineSymbol ) { clonedLayer->setSubSymbol( mLineSymbol->clone() ); } return clonedLayer; }
QgsSymbolLayerV2* QgsLinePatternFillSymbolLayer::clone() const { QgsSymbolLayerV2* clonedLayer = QgsLinePatternFillSymbolLayer::create( properties() ); if ( mOutline ) { clonedLayer->setSubSymbol( mOutline->clone() ); } return clonedLayer; }
QgsSymbolLayerV2* QgsPointPatternFillSymbolLayer::clone() const { QgsSymbolLayerV2* clonedLayer = QgsPointPatternFillSymbolLayer::create( properties() ); if ( mMarkerSymbol ) { clonedLayer->setSubSymbol( mMarkerSymbol->clone() ); } return clonedLayer; }
QgsSymbolLayerV2* QgsSVGFillSymbolLayer::clone() const { QgsSymbolLayerV2* clonedLayer = 0; if ( !mSvgFilePath.isEmpty() ) { clonedLayer = new QgsSVGFillSymbolLayer( mSvgFilePath, mPatternWidth, mAngle ); QgsSVGFillSymbolLayer* sl = static_cast<QgsSVGFillSymbolLayer*>( clonedLayer ); sl->setSvgFillColor( mSvgFillColor ); sl->setSvgOutlineColor( mSvgOutlineColor ); sl->setSvgOutlineWidth( mSvgOutlineWidth ); } else { clonedLayer = new QgsSVGFillSymbolLayer( mSvgData, mPatternWidth, mAngle ); } if ( mOutline ) { clonedLayer->setSubSymbol( mOutline->clone() ); } return clonedLayer; }