@Override
    public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
        Component returnValue = null;
        
        if ((value != null) && (value instanceof DefaultMutableTreeNode)) {
            Object userObject = ((DefaultMutableTreeNode) value).getUserObject();
            
            if (userObject instanceof NanoPostTreeItem) {
                NanoPostTreeItem npti = (NanoPostTreeItem) userObject;
                npti.npPanel.setSelected(selected);
                returnValue = npti.npPanel;
            }
        }
        
        if (returnValue == null) {
            returnValue = defaultRenderer.getTreeCellRendererComponent(tree, value, selected, expanded,
                    leaf, row, hasFocus);
        }
        return returnValue;
    }