Closed homebeaver closed 1 year ago
Die nimbus implementierungen sind in package javax.swing.plaf.nimbus
und als final und nicht public definiert. Beispiele:
/**
* Convenient base class for defining Painter instances for rendering a region or component in Nimbus.
*/
public abstract class AbstractRegionPainter implements Painter<JComponent> { ...
protected static class PaintContext { ...
final class ArrowButtonPainter extends AbstractRegionPainter { ...
final class OptionPanePainter extends AbstractRegionPainter { ...
AbstractRegionPainter
ist zwar public, aber entält viele Teile die nicht sichtbar sind (PaintContext
), also sich nicht einfach überschreiben lassen.
Zwischenergebnis:
Denn ...
TreePainter + FileChooserPainter :
man sieht, dass "Tree.leafIcon" und "FileChooser.fileIcon" sind gleich. Aber der Code wird nicht wiederverwendet! Dto für "Tree.closedIcon" und "FileChooser.directoryIcon".
As commented https://github.com/homebeaver/SwingSet/issues/23#issuecomment-1166306561 this are metal icons, most of them images
In nimbus all icons are painted