X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fjexer%2Fttree%2FTTreeViewWidget.java;h=080a200497dfbe5389a8f62f3593688eb325fb72;hb=12b90437b5f22c2ae6e9b9b14c3b62b60f6143e5;hp=ceb50ab9c38c1a1a14730031b5247f2b38af3b4f;hpb=a69ed767c9c07cf35cf1c5f7821fc009cfe79cd2;p=fanfix.git diff --git a/src/jexer/ttree/TTreeViewWidget.java b/src/jexer/ttree/TTreeViewWidget.java index ceb50ab..080a200 100644 --- a/src/jexer/ttree/TTreeViewWidget.java +++ b/src/jexer/ttree/TTreeViewWidget.java @@ -34,8 +34,10 @@ import jexer.TKeypress; import jexer.TScrollableWidget; import jexer.TVScroller; import jexer.TWidget; +import jexer.bits.StringUtils; import jexer.event.TKeypressEvent; import jexer.event.TMouseEvent; +import jexer.event.TResizeEvent; import static jexer.TKeypress.*; /** @@ -109,6 +111,24 @@ public class TTreeViewWidget extends TScrollableWidget { // Event handlers --------------------------------------------------------- // ------------------------------------------------------------------------ + /** + * Handle window/screen resize events. + * + * @param event resize event + */ + @Override + public void onResize(final TResizeEvent event) { + super.onResize(event); + + if (event.getType() == TResizeEvent.Type.WIDGET) { + treeView.onResize(new TResizeEvent(TResizeEvent.Type.WIDGET, + getWidth() - 1, getHeight() - 1)); + return; + } else { + super.onResize(event); + } + } + /** * Handle mouse press events. * @@ -279,7 +299,7 @@ public class TTreeViewWidget extends TScrollableWidget { selectedRow++; } - int lineWidth = item.getText().length() + int lineWidth = StringUtils.width(item.getText()) + item.getPrefix().length() + 4; if (lineWidth > maxLineWidth) { maxLineWidth = lineWidth;