public static void install( JComponent c, Function<JComponent, Insets> getPaddingFunction, String... propertyNames ) {
		if( !migLayoutAvailable )
			return;

		// set client property
		setVisualPadding( c, getPaddingFunction.apply( c ) );

		// add listener
		c.addPropertyChangeListener( (FlatMigListener) e -> {
			String propertyName = e.getPropertyName();
			for( String name : propertyNames ) {
				if( name.equals( propertyName ) ) {
					setVisualPadding( c, getPaddingFunction.apply( c ) );
					break;
				}
			}
		} );
	}
Invokes the given function to retrieve the actual visual paddings and sets
the client property. Also adds property change listener to component and
re-invokes the function if one of the given properties have changed.
flatlaf-core/src/main/java/com/formdev/flatlaf/ui/MigLayoutVisualPadding.java