previous | start | next

## Editing Arbitrary Properties

- Your type isn't easily editable as string
- E.g. `Color`
- Property editor pops up your edit dialog
- - `boolean supportsCustomEditor()` must return `true`
  - `Component` `getCustomEditor()` returns dialog
- Property editor can paint current value of your type
- - `boolean isPaintable()` must return `true`
  - `void paintValue(Graphics g, Rectangle bounds)` paints

previous | start | next