in commands/FBAutoLayoutCommands.py [0:0]
def setBorderOnAmbiguousViewRecursive(view, width, color):
if not fb.evaluateBooleanExpression(
"[(id)%s isKindOfClass:(Class)[UIView class]]" % view
):
return
isAmbiguous = fb.evaluateBooleanExpression("(BOOL)[%s hasAmbiguousLayout]" % view)
if isAmbiguous:
layer = viewHelpers.convertToLayer(view)
fb.evaluateEffect("[%s setBorderWidth:(CGFloat)%s]" % (layer, width))
fb.evaluateEffect(
"[%s setBorderColor:(CGColorRef)[(id)[UIColor %sColor] CGColor]]"
% (layer, color)
)
subviews = fb.evaluateExpression("(id)[%s subviews]" % view)
subviewsCount = int(fb.evaluateExpression("(int)[(id)%s count]" % subviews))
if subviewsCount > 0:
for i in range(0, subviewsCount):
subview = fb.evaluateExpression("(id)[%s objectAtIndex:%i]" % (subviews, i))
setBorderOnAmbiguousViewRecursive(subview, width, color)