public void update(Graphics g) {

		int width = getWidth();
		int height = getHeight();

		g.setColor(getBackground());
		g.fillRect(0, 0, width, height);
		g.setColor(Color.gray);
		g.drawRect(3, 3, width - 6, height - 6);

		if (colorID < COLORS.length) {
			g.setColor(COLORS[colorID]);
			g.fillRect(4, 4, width - 7, height - 7);
		}
		else if (colorID == ColorComboBox.INDEX_MORE_COLOR) {
			g.setColor(moreColor);
			g.fillRect(4, 4, width - 7, height - 7);
		}
		else if (colorID == ColorComboBox.INDEX_COLOR_CHOOSER) {
			g.setColor(getBackground().equals(SystemColor.textHighlight) ? SystemColor.textHighlightText
					: SystemColor.textText);
			FontMetrics fm = g.getFontMetrics();
			String s = TextComponentPopupMenu.getInternationalText("More");
			if (s == null)
				s = "More";
			s += "...";
			int w = fm.stringWidth(s);
			g.drawString(s, (width - w) >> 1, 14);
		}
		else if (colorID == ColorComboBox.INDEX_HEX_INPUTTER) {
			g.setColor(getBackground().equals(SystemColor.textHighlight) ? SystemColor.textHighlightText
					: SystemColor.textText);
			FontMetrics fm = g.getFontMetrics();
			String s = TextComponentPopupMenu.getInternationalText("Hex");
			if (s == null)
				s = "Hex";
			s += "...";
			int w = fm.stringWidth(s);
			g.drawString(s, (width - w) >> 1, 14);
		}

	}