home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 2003 March / DPPCPRO0303.ISO / Components / Microsoft ASP / _SETUP.1 / ASPWizard.jar / asp / wizard / FormattedPreviewTable.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-11-20  |  2.4 KB  |  56 lines

  1. package asp.wizard;
  2.  
  3. import com.sun.java.swing.JComponent;
  4. import com.sun.java.swing.JTable;
  5. import com.sun.java.swing.table.TableCellRenderer;
  6. import com.sun.java.swing.table.TableColumnModel;
  7. import java.awt.Component;
  8. import java.awt.Dimension;
  9.  
  10. public class FormattedPreviewTable extends ReadOnlyJTable {
  11.    private PreviewCellRenderer _defaultCellRenderer;
  12.    // $FF: synthetic field
  13.    static Class class$java$lang$String;
  14.  
  15.    public TableCellRenderer getDefaultRenderer(Class valueType) {
  16.       if (this._defaultCellRenderer == null) {
  17.          this._defaultCellRenderer = new PreviewCellRenderer();
  18.       }
  19.  
  20.       return this._defaultCellRenderer;
  21.    }
  22.  
  23.    public void adjustColumnWidths() {
  24.       PreviewCellRenderer rndr = (PreviewCellRenderer)this.getDefaultRenderer(class$java$lang$String != null ? class$java$lang$String : (class$java$lang$String = class$("java.lang.String")));
  25.       rndr.setMode(1);
  26.       Dimension size = ((Component)this).getSize();
  27.       ((JComponent)this).paintImmediately(0, 0, size.width, size.height);
  28.       Dimension maxCellSize = rndr.getMaximumCellSize((Dimension)null);
  29.       if (maxCellSize.height > 0) {
  30.          TableColumnModel tcm = ((JTable)this).getColumnModel();
  31.          int columnCount = tcm.getColumnCount();
  32.          ((JTable)this).setRowHeight(maxCellSize.height);
  33.  
  34.          for(int c = 0; c < columnCount; ++c) {
  35.             tcm.getColumn(c).setWidth(maxCellSize.width);
  36.          }
  37.       }
  38.  
  39.       rndr.setMode(0);
  40.    }
  41.  
  42.    public void validate() {
  43.       this.adjustColumnWidths();
  44.       super.validate();
  45.    }
  46.  
  47.    // $FF: synthetic method
  48.    static Class class$(String class$) {
  49.       try {
  50.          return Class.forName(class$);
  51.       } catch (ClassNotFoundException forName) {
  52.          throw new NoClassDefFoundError(((Throwable)forName).getMessage());
  53.       }
  54.    }
  55. }
  56.