/** draw the arrows between items */ public void paintComponent(Graphics g) { super.paintComponent(g); if (_glist != null && _glist.size() > 1) { Graphics2D g2 = (Graphics2D) g; Arrow leftArrow = new Arrow(); leftArrow.setColor(Color.BLACK); Arrow rightArrow = new Arrow(); rightArrow.setColor(Color.RED); Iterator<GNode> iter = _glist.iterator(); while (iter.hasNext()) { GNode nCur = iter.next(); if (nCur.left != null) { leftArrow.setLine(nCur.getStart(), nCur.left.getEnd()); leftArrow.draw(g2); } if (nCur.right != null) { rightArrow.setLine(nCur.getStart(), nCur.right.getEnd()); rightArrow.draw(g2); } } } }