Merge commit 'edcd53bbbba9f94e21f43fd03d3a2febcc2b1564'
[fanfix.git] / src / jexer / TRadioGroup.java
index 7460de413b653a2d3c2898a6d8a73a8a2ad172fd..a82b074f8ce9a1c4fe6de462433b8d4124507b91 100644 (file)
@@ -81,6 +81,27 @@ public class TRadioGroup extends TWidget {
     // TWidget ----------------------------------------------------------------
     // ------------------------------------------------------------------------
 
+    /**
+     * Override TWidget's width: we can only set width at construction time.
+     *
+     * @param width new widget width (ignored)
+     */
+    @Override
+    public void setWidth(final int width) {
+        // Do nothing
+    }
+
+    /**
+     * Override TWidget's height: we can only set height at construction
+     * time.
+     *
+     * @param height new widget height (ignored)
+     */
+    @Override
+    public void setHeight(final int height) {
+        // Do nothing
+    }
+
     /**
      * Draw a radio button with label.
      */
@@ -163,12 +184,16 @@ public class TRadioGroup extends TWidget {
         int buttonX = 1;
         int buttonY = getChildren().size() + 1;
         if (StringUtils.width(label) + 4 > getWidth()) {
-            setWidth(StringUtils.width(label) + 7);
+            super.setWidth(StringUtils.width(label) + 7);
         }
-        setHeight(getChildren().size() + 3);
+        super.setHeight(getChildren().size() + 3);
         TRadioButton button = new TRadioButton(this, buttonX, buttonY, label,
             getChildren().size() + 1);
 
+        if (getParent().getLayoutManager() != null) {
+            getParent().getLayoutManager().resetSize(this);
+        }
+
         // Default to the first item on the list.
         activate(getChildren().get(0));