private double getPrefSize(RegionDimension dimension, LayoutConstraintsDescriptor layoutConstraints) { if (dimension.equals(RegionDimension.WIDTH)) { return layoutConstraints.getPrefWidth(); } else { return layoutConstraints.getPrefHeight(); } }
private void configureChild(DockingSplitPaneChildBase child, boolean addListeners) { LayoutConstraintsDescriptor layoutConstraints = child.getLayoutConstraints(); if (dockingSplitPane.isHorizontal()) { configureChild(child, RegionDimension.WIDTH, layoutConstraints.getPrefWidth(), addListeners); } else { configureChild(child, RegionDimension.HEIGHT, layoutConstraints.getPrefHeight(), addListeners); } }
private void recalculateLayoutConstraints() { double prefWidth = 0; double prefHeight = 0; for (DockingSplitPaneChildBase child : dockingSplitPaneChildren) { LayoutConstraintsDescriptor childLayoutConstraints = child.getLayoutConstraints(); if (LayoutConstraintsDescriptor.isPreferred(prefWidth) && (LayoutConstraintsDescriptor.isFlexible(childLayoutConstraints.getPrefWidth()) || childLayoutConstraints.getPrefWidth() > prefWidth)) { prefWidth = childLayoutConstraints.getPrefWidth(); } if (LayoutConstraintsDescriptor.isPreferred(prefHeight) && (LayoutConstraintsDescriptor.isFlexible(childLayoutConstraints.getPrefHeight()) || childLayoutConstraints.getPrefHeight() > prefHeight)) { prefHeight = childLayoutConstraints.getPrefHeight(); } if (LayoutConstraintsDescriptor.isFlexible(prefWidth) && LayoutConstraintsDescriptor.isFlexible(prefHeight)) { break; } } final LayoutConstraintsDescriptor layoutConstraintsDescriptor = LayoutConstraintsDescriptor.getLayoutConstraints(prefWidth, prefHeight); setLayoutConstraints(layoutConstraintsDescriptor); }
@Override public void updateLayoutConstraints() { if (LayoutConstraintsDescriptor.isPreferred(getLayoutConstraints().getPrefWidth())) { getLayoutConstraints().setPrefWidth(getWidth()); } if (LayoutConstraintsDescriptor.isPreferred(getLayoutConstraints().getPrefHeight())) { getLayoutConstraints().setPrefHeight(getHeight()); } }