@Override
	protected LayoutManager createLayoutManager() {
		return new LayoutManager() {
			@Override
			public void addLayoutComponent( String name, Component comp ) {}
			@Override
			public void removeLayoutComponent( Component comp ) {}

			@Override
			public Dimension preferredLayoutSize( Container parent ) {
				return parent.getPreferredSize();
			}
			@Override
			public Dimension minimumLayoutSize( Container parent ) {
				return parent.getMinimumSize();
			}
			@Override
			public void layoutContainer( Container parent ) {
				Insets insets = datePicker.getInsets();
				int x = insets.left;
				int y = insets.top;
				int width = datePicker.getWidth() - insets.left - insets.right;
				int height = datePicker.getHeight() - insets.top - insets.bottom;

				int popupButtonWidth = popupButton != null ? height : 0;
				boolean ltr = datePicker.getComponentOrientation().isLeftToRight();

				Rectangle r = new Rectangle( x + (ltr ? 0 : popupButtonWidth), y, width - popupButtonWidth, height );
				r = FlatUIUtils.subtractInsets( r, UIScale.scale( padding ) );
				datePicker.getEditor().setBounds( r );

				if( popupButton != null )
					popupButton.setBounds( x + (ltr ? width - popupButtonWidth : 0), y, popupButtonWidth, height );
			}
		};
	}
Provides the Flat LaF UI delegate for {@link org.jdesktop.swingx.JXDatePicker}.

@author Karl Tauber
flatlaf-swingx/src/main/java/com/formdev/flatlaf/swingx/ui/FlatDatePickerUI.java