X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fjexer%2FTPanel.java;h=c38f8e1f50ee1d76b34821fc56f5959597784d84;hb=505be508ae7d3fb48122be548b310a238cfb91eb;hp=1a8dab1d6ebb79b64bf491d121acc8bfb768638a;hpb=fc2af49443133106c95da9aaf8b7126be8c7dedd;p=nikiroo-utils.git diff --git a/src/jexer/TPanel.java b/src/jexer/TPanel.java index 1a8dab1..c38f8e1 100644 --- a/src/jexer/TPanel.java +++ b/src/jexer/TPanel.java @@ -28,6 +28,8 @@ */ package jexer; +import jexer.event.TResizeEvent; + /** * TPanel is an empty container for other widgets. */ @@ -56,6 +58,35 @@ public class TPanel extends TWidget { super(parent, x, y, width, height); } + // ------------------------------------------------------------------------ + // Event handlers --------------------------------------------------------- + // ------------------------------------------------------------------------ + + /** + * Method that subclasses can override to handle window/screen resize + * events. + * + * @param resize resize event + */ + @Override + public void onResize(final TResizeEvent resize) { + if (resize.getType() == TResizeEvent.Type.WIDGET) { + if (getChildren().size() == 1) { + TWidget child = getChildren().get(0); + if ((child instanceof TSplitPane) + || (child instanceof TPanel) + ) { + child.onResize(new TResizeEvent(TResizeEvent.Type.WIDGET, + resize.getWidth(), resize.getHeight())); + } + return; + } + } + + // Pass on to TWidget. + super.onResize(resize); + } + // ------------------------------------------------------------------------ // TWidget ---------------------------------------------------------------- // ------------------------------------------------------------------------