@Override
    public Component getTreeCellRendererComponent(JTree jtree, Object o, boolean bln, boolean bln1, boolean bln2, int i, boolean bln3) {
        super.getTreeCellRendererComponent(jtree, o, bln, bln1, bln2, i, bln3);

        // Set ImageIcon
        ImageIcon icon = null;
        DefaultMutableTreeNode node = (DefaultMutableTreeNode) o;
        if (node.getUserObject() instanceof Story) {
            icon = createImageIcon("Images/arrow-down.png");
        } else if (node.getUserObject() instanceof Route) {
            icon = createImageIcon("Images/green_start_16.png");
        } else if (node.getUserObject() instanceof Link) {
            icon = createImageIcon("Images/red_link_16.png");
        } else if (node.getUserObject() instanceof Node) {
            icon = createImageIcon("Images/blue_waypoint_16.png");
        }
        setIcon(icon);
        return this;
    }