@Override public void writeDesign(Element design, DesignContext designContext) { super.writeDesign(design, designContext); AbstractField<?> def = designContext.getDefaultInstance(this); Attributes attr = design.attributes(); // handle readonly DesignAttributeHandler.writeAttribute("readonly", attr, super.isReadOnly(), def.isReadOnly(), Boolean.class, designContext); } }
/** * React to read only status changes of the property by requesting a * repaint. * * @see Property.ReadOnlyStatusChangeListener */ @Override public void readOnlyStatusChange(Property.ReadOnlyStatusChangeEvent event) { boolean readOnly = event.getProperty().isReadOnly(); boolean shouldFireChange = isReadOnly() != readOnly || getState().propertyReadOnly != readOnly; getState().propertyReadOnly = readOnly; if (shouldFireChange) { fireReadOnlyStatusChange(); } }
if (!ignoreReadOnly && isReadOnly()) { throw new Property.ReadOnlyException();