def parse_xdot_drawing_directive(self, new):
components = XdotAttrParser().parse_xdot_data(new)<EOL>max_x = max( [c.bounds[<NUM_LIT:0>] for c in components] + [<NUM_LIT:1>] )<EOL>max_y = max( [c.bounds[<NUM_LIT:1>] for c in components] + [<NUM_LIT:1>] )<EOL>pos_x = min( [c.x for c in components] )<EOL>pos_y = min( [c.y for c in components] )<EOL>move_to_origin(components)<EOL>container = Container(auto_size=True,<EOL>position=[pos_x-self.pos[<NUM_LIT:0>], pos_y-self.pos[<NUM_LIT:1>]],<EOL>bgcolor="<STR_LIT>")<EOL><INDENT>self.bounds = bounds=[max_x, max_y]<EOL>container = Container(fit_window=False, auto_size=True, bgcolor="<STR_LIT>")<EOL><DEDENT>container.add( *components )<EOL>self.drawing = container<EOL>
Parses the drawing directive, updating the node components.