deassignButton.setIcon(null);
shapeIcon.setIcon(null);
    public void update (Selection     selection,                        SelectionHint hint)    {        Object entity = selection.getEntity();        if (logger.isFineEnabled()) {            logger.info(                "GlyphBoard " + selection.getTag() + " selfUpdating=" +                selfUpdating + " : " + entity);        }        switch (selection.getTag()) {        case VERTICAL_GLYPH :        case HORIZONTAL_GLYPH :            // Display Glyph parameters (while preventing circular updates)            selfUpdating = true;            Glyph glyph = (Glyph) entity;            // Dump button and deassign button            dump.setEnabled(glyph != null);            deassignButton.setEnabled((glyph != null) && glyph.isKnown());            // Shape text and icon            Shape shape = (glyph != null) ? glyph.getShape() : null;            if (shape != null) {                shapeField.setText(shape.toString());                deassignButton.setIcon(shape.getIcon());            } else {                shapeField.setText("");                deassignButton.setIcon(null);            }            // Global Spinner            if (globalSpinner != null) {                if (glyph != null) {                    globalSpinner.setValue(glyph.getId());                } else {                    globalSpinner.setValue(NO_VALUE);                }            }            // Known Spinner            if (knownSpinner != null) {                if (glyph != null) {                    knownSpinner.setValue(                        knownPredicate.check(glyph) ? glyph.getId() : NO_VALUE);                } else {                    knownSpinner.setValue(NO_VALUE);                }            }            selfUpdating = false;            break;        case GLYPH_SET :            // Display count of glyphs in the glyph set            List<Glyph> glyphs = (List<Glyph>) entity; // Compiler warning            if ((glyphs != null) && (glyphs.size() > 0)) {                count.setText(Integer.toString(glyphs.size()));            } else {                count.setText("");            }            break;        default :            logger.severe("Unexpected selection event from " + selection);        }    }