void (Component c) { Component component = c != null ? getActualSplitter() : null; if (component instanceof ThreeComponentsSplitter) { ThreeComponentsSplitter splitter = (ThreeComponentsSplitter)component; myIsLastComponent.set(SwingUtilities.isDescendingFrom(c, splitter.getLastComponent())); myInitialHeight.set(myIsLastComponent.get() ? splitter.getLastSize() : splitter.getFirstSize()); return; } if (component instanceof Splitter) { Splitter splitter = (Splitter)component; myIsLastComponent.set(true); myInitialHeight.set(splitter.getSecondComponent().getHeight()); return; } if (component instanceof ToolWindowPane) { myIsLastComponent.set(ui.window.getAnchor() == ToolWindowAnchor.BOTTOM || ui.window.getAnchor() == ToolWindowAnchor.RIGHT); myInitialHeight.set(ui.window.getAnchor().isHorizontal() ? ui.window.getDecorator().getHeight() : ui.window.getDecorator().getWidth()); return; } myIsLastComponent.set(null); myInitialHeight.set(null); myPressPoint.set(null); myDragTracker.set(null); }