- Hlavní stránka
- Balíky
- Třídy
- Soubory

# src/cz/neubauer/tomas/hazardanalysis/model/tablemodels/AnalysisTableModel.java

Zobrazit dokumentaci tohoto souboru.

    00001
    00004 package cz.neubauer.tomas.hazardanalysis.model.tablemodels;
    00005
    00006 import javax.swing.table.AbstractTableModel;
    00007
    00008 import cz.neubauer.tomas.hazardanalysis.model.analysis.Analysis;
    00009
    00013 public class AnalysisTableModel extends AbstractTableModel {
    00017         private static final long serialVersionUID = -4715872346724348539L;
    00018
    00019         private Analysis analysis;
    00020
    00021         private String[] columnNames = new String[] { "Název komopnenty systému",
    00022                         "Poloha komponenty v systému", "Typ nebezpečí dle ČSN EN 1050",
    00023                         "Upřesnit" };
    00024
    00025         public AnalysisTableModel() {
    00026                 analysis = new Analysis();
    00027         }
    00028
    00029         /*
    00030          * (non-Javadoc)
    00031          *
    00032          * @see javax.swing.table.TableModel#getColumnCount()
    00033          */
    00034         @Override
    00035         public int getColumnCount() {
    00036                 return 4;
    00037         }
    00038
    00039         /*
    00040          * (non-Javadoc)
    00041          *
    00042          * @see javax.swing.table.TableModel#getRowCount()
    00043          */
    00044         @Override
    00045         public int getRowCount() {
    00046                 return analysis.getRecordsCount();
    00047         }
    00048
    00049         /*
    00050          * (non-Javadoc)
    00051          *
    00052          * @see javax.swing.table.TableModel#getValueAt(int, int)
    00053          */
    00054         @Override
    00055         public Object getValueAt(int rowIndex, int columnIndex) {
    00056                 switch (columnIndex) {
    00057                 case 0:
    00058                         return analysis.getAnalysisRecord(rowIndex).getComponent()
    00059                                         .getName();
    00060                 case 1:
    00061                         return analysis.getAnalysisRecord(rowIndex).getComponent()
    00062                                         .getLocation();
    00063                 case 2:
    00064                         return analysis.getAnalysisRecord(rowIndex).getComponent()
    00065                                         .getDangersAsString();
    00066                 case 3:
    00067                         return "upřesnit...";
    00068                 default:
    00069                         return null;
    00070                 }
    00071         }
    00072
    00073         /*
    00074          * (non-Javadoc)
    00075          *
    00076          * @see javax.swing.table.AbstractTableModel#isCellEditable(int, int)
    00077          */
    00078         @Override
    00079         public boolean isCellEditable(int rowIndex, int columnIndex) {
    00080                 return columnIndex == 0 | columnIndex == 1;
    00081         }
    00082
    00083         /*
    00084          * (non-Javadoc)
    00085          *
    00086          * @see javax.swing.table.AbstractTableModel#setValueAt(java.lang.Object,
    00087          *      int, int)
    00088          */
    00089         @Override
    00090         public void setValueAt(Object value, int rowIndex, int columnIndex) {
    00091                 switch (columnIndex) {
    00092                 case 0:
    00093                         analysis.getAnalysisRecord(rowIndex).getComponent().setName(
    00094                                         (String) value);
    00095                         break;
    00096                 case 1:
    00097                         analysis.getAnalysisRecord(rowIndex).getComponent().setLocation(
    00098                                         (String) value);
    00099                         break;
    00100                 case 2:
    00101                         // nop
    00102                         break;
    00103                 default:
    00104                         // nop
    00105                         break;
    00106                 }
    00107         }
    00108
    00109         public Analysis getAnalysis() {
    00110                 return analysis;
    00111         }
    00112
    00113         public void setAnalysis(Analysis analysis) {
    00114                 this.analysis = analysis;
    00115                 fireTableDataChanged();
    00116         }
    00117
    00118         /*
    00119          * (non-Javadoc)
    00120          *
    00121          * @see javax.swing.table.AbstractTableModel#getColumnName(int)
    00122          */
    00123         @Override
    00124         public String getColumnName(int column) {
    00125                 return columnNames[column];
    00126         }
    00127 }