Declaration

func enumerateCompositionUnits(_ code: @escaping ([GSShape], [GSShape]?, [GSShape]?) -> Void, supporting supportedFeatures: GSDrawStackFeature, extraHandles: NSMutableArray?, secondaryPen secondPen: (any GSPenProtocol & NSObjectProtocol)?)

Declaration

- (void) enumerateCompositionUnits:(void (^)(NSArray<GSShape *> *shapes, NSArray<GSShape *> *subtractMasks, NSArray<GSShape *> *intersectMasks)) code supporting:(GSDrawStackFeature) supportedFeatures extraHandles:(NSMutableArray *) extraHandles secondaryPen:(NSObject<GSPenProtocol> *) secondPen;

Declaration

enumerateCompositionUnits_supporting_extraHandles_secondaryPen_(shapes: list[GSShape], subtractMasks: list[GSShape], intersectMasks: list[GSShape], code, supportedFeatures: GSDrawStackFeature, extraHandles: list, secondPen: NSObject<GSPenProtocol>)

Discussion

  • Hidden shapes are skipped.

  • Mask shapes are skipped and instead provided as parameters to the block.