public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
        java.lang.String itemText = value != null ? value.toString() : "";

        if( this.isViewerMode ) {
                // Item for current contents preview tool
            columnText.setIcon(this.iconViewCurrent);
        } else {
                // Regular copy/paste string items
            columnText.setIcon(UtilsClipboard.isInClipboard(itemText) ? this.iconDefault : this.iconHistoric);
        }

        columnText.setText(itemText);

        boolean hasFocus= list.hasFocus();
        int hashCode    = itemText.hashCode();

        if (isSelected) {
                // Item is selected
            setBackground( hasFocus ? this.colorSelectionBackground : colorSelectionBackgroundNoFocus );
            setForeground( this.colorSelectionForeground );
            setBorder(cellHasFocus ? borderSelected : nonFocusBorder);

            if( this.isMac ) {
                this.columnText.setForeground( hasFocus ? JBColor.WHITE : JBColor.BLACK );
            }
        } else {
                // Item is not selected
            int idColorTagged       = Preferences.getIdColorByHashTag(hashCode);
            Color colorBackground   = getColorByIndex(idColorTagged);
            Border border           = getBorderByIndex(idColorTagged);

            setBorder( border );
            setBackground( colorBackground );
            setForeground(this.colorForeground);

            if( this.isMac ) {
                this.columnText.setForeground( this.colorForeground );
            }
        }

        setOpaque(true);

        return this;
    }