org.flexdock.docking.defaults.StandardBorderManager
This class provides a standard implementation of the {@code BorderManager}interface. It is designed to avoid the negative visual effects caused by nesting docked components that have individual borders. It accomplishes this by establishing and maintaining a single border for all docked components This class encapsulates a {@code javax.swing.border.Border} instance, or a{@code null} border reference, for application to a{@code DefaultDockingPort} and its child components. If the{@code DefaultDockingPort} has no child component, then{@code managePortNullChild()} will apply the encapsulated border to the{@code DefaultDockingPort} itself, rendering the visible outline of an empty{@code DockingPort}. If the {@code DefaultDockingPort} has a generic{@code Component} as its child, excluding a {@code JTabbedPane} or{@code JSplitPane}, then the border for that component is set to {@code null} and the encapsulated border is applied to the{@code DockingPort} via {@code managePortSimpleChild()}. If the {@code DefaultDockingPort} has a {@code JTabbedPane} as its child, then a{@code null} border is set for the {@code JTabbedPane} and all of its childcomponents, and the encapsulated border is applied to the {@code DockingPort}. This is accomplished by calling {@code managePortTabbedChild()}. Finally, {@code managePortSplitChild()} will manage the border for a{@code DefaultDockingPort} whose docked component is a {@code JSplitPane}. This method removes all borders from the {@code DefaultDockingPort} and thesplit pane divider and applies the encapsulated border to both left and right child components of the {@code JSplitPane}.
@author Christopher Butler