1 package net.sf.openrocket.gui.components;
3 import java.awt.Dimension;
4 import java.awt.Rectangle;
6 import javax.swing.JPanel;
7 import javax.swing.JScrollPane;
8 import javax.swing.ScrollPaneConstants;
10 import net.miginfocom.swing.MigLayout;
12 public class DescriptionArea extends JScrollPane {
14 private ResizeLabel text;
15 private MigLayout layout;
18 public DescriptionArea(int rows) {
22 public DescriptionArea(int rows, float size) {
23 super(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
24 ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
26 layout = new MigLayout("ins 0 2px, fill");
27 panel = new JPanel(layout);
29 text = new ResizeLabel(" ",size);
31 Dimension dim = text.getPreferredSize();
32 dim.height = (dim.height+2)*rows + 2;
33 this.setPreferredSize(dim);
35 panel.add(text, "growx");
37 this.setViewportView(panel);
41 public void setText(String txt) {
42 if (!txt.startsWith("<html>"))
49 public void validate() {
51 Rectangle dim = this.getViewportBorderBounds();
52 layout.setComponentConstraints(text, "width "+ dim.width + ", growx");