public void addColors(boolean addBasicColors)
    {
        int numColors = js.getNumColors();
        int numCustomColors = js.getNumCustomColors();
        String currentBGColor = js.getBGColor();
        int index = -1;

        if( addBasicColors )
        {
            String[] color = new String[numColors];
            for( int loop=0; loop<numColors; loop++ )
            {
                color[loop] = js.getColor(loop).getName();
                if( color[loop].equalsIgnoreCase( currentBGColor ) )
                    index = loop;
            }
            colorList = new JList( color );
            if( index >=0 )
            {
                colorList.setSelectedIndex(index);
                customColorList.clearSelection();
            }
            else colorList.clearSelection();
            listScrollPane = new JScrollPane(colorList);
            listScrollPane.setVisible(true);
        }

        index = -1;
        String[] customColor = new String[numCustomColors];
        for( int loop=0; loop<numCustomColors; loop++ )
        {
            customColor[loop] = js.getCustomColor(loop).getName();
            if( customColor[loop].equalsIgnoreCase( currentBGColor ) )
                index = loop;
        }
        customColorList = new JList( customColor );
        if( index >=0 )
        {
            customColorList.setSelectedIndex(index);
            colorList.clearSelection();
        }
        else customColorList.clearSelection();

        customColorList.setBorder(BorderFactory.createLoweredBevelBorder());
        customColorList.setDoubleBuffered(true);
        customColorList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
        customColorList.addListSelectionListener(this);
    }