@Override
		public void paintIconAnimated( Component c, Graphics g, int x, int y, float animatedValue ) {
			Color color = ColorFunctions.mix( onColor, offColor, animatedValue );

			// border
			g.setColor( color );
			g.fillOval( 0, 0, SIZE, SIZE );

			// background
			g.setColor( c.getBackground() );
			int bwh = SIZE - (BORDER_SIZE * 2);
			g.fillOval( BORDER_SIZE, BORDER_SIZE, bwh, bwh );

			// dot
			float dotDiameter = DOT_SIZE * animatedValue;
			float xy = (SIZE - dotDiameter) / 2f;
			g.setColor( color );
			((Graphics2D)g).fill( new Ellipse2D.Float( xy, xy, dotDiameter, dotDiameter ) );
		}
Experimental radio button icon that:
- fades icon color from off to on color
- animates size of center dot from zero to full size
flatlaf-testing/src/main/java/com/formdev/flatlaf/testing/FlatAnimatedIconTest.java