@Override
	JComponent getComponent() {
		if (invalid) {
			if (splitPane != null) {
				dividerPosition = ((SplitPanel) comp).getDividerPosition();
				splitPaneSize = comp.getSize();
			}

			splitPane = null;
			comp = null;
			JComponent comp1 = child1.getComponent();
			JComponent comp2 = child2.getComponent();
			if (comp1 != null && comp2 != null) {
				splitPane = new SplitPanel(this, comp1, comp2, isHorizontal);
				splitPane.setBorder(BorderFactory.createEmptyBorder());
				if (splitPaneSize != null) {
					splitPane.setSize(splitPaneSize);
					splitPane.setDividerPosition(dividerPosition);
				}
				comp = splitPane;
			}
			else if (comp1 != null) {
				comp = comp1;
			}
			else {
				comp = comp2;
			}
			invalid = false;
		}
		return comp;
	}
Constructs a new SplitNode from the XML JDOM element
@param elem the XML JDOM element containing the configuration information.
@param mgr the DockingWindowsManager for this node.
@param parent the parent node for this node.
@param restoredPlaceholders the list into which any restored placeholders will be placed
Ghidra/Framework/Docking/src/main/java/docking/SplitNode.java