# File lib/edi4r/diagrams.rb, line 547 def next! loop do node = self.node; r = nil if node.is_a? TNode and @down_flag @down_flag = false r = self.down! end break if r # Down not applicable or available; now try "right!" break if r = self.right! # At end of this branch - try to move up: break if r = self.up! # Already at top level! return nil end self end