comparison gui/edu/unc/genomics/AssemblyTableModel.java @ 2:e16016635b2a

Uploaded
author timpalpant
date Mon, 13 Feb 2012 22:12:06 -0500
parents
children
comparison
equal deleted inserted replaced
1:a54db233ee3d 2:e16016635b2a
1 package edu.unc.genomics;
2
3 import java.util.List;
4
5 import javax.swing.table.AbstractTableModel;
6
7 /**
8 * Model for the AssemblyManagerDialog table view
9 *
10 * @author timpalpant
11 *
12 */
13 public class AssemblyTableModel extends AbstractTableModel {
14
15 private static final long serialVersionUID = 8225453782461913732L;
16
17 private static final String[] COLUMN_NAMES = { "Name", "# Contigs" };
18
19 private final List<Assembly> assemblies;
20
21 public AssemblyTableModel(List<Assembly> assemblies) {
22 this.assemblies = assemblies;
23 }
24
25 /* (non-Javadoc)
26 * @see javax.swing.table.AbstractTableModel#getColumnName(int)
27 */
28 @Override
29 public String getColumnName(int col) {
30 return COLUMN_NAMES[col];
31 }
32
33 /* (non-Javadoc)
34 * @see javax.swing.table.AbstractTableModel#isCellEditable(int, int)
35 */
36 @Override
37 public boolean isCellEditable(int row, int col) {
38 return false;
39 }
40
41 /* (non-Javadoc)
42 * @see javax.swing.table.TableModel#getRowCount()
43 */
44 @Override
45 public int getRowCount() {
46 return assemblies.size();
47 }
48
49 /* (non-Javadoc)
50 * @see javax.swing.table.TableModel#getColumnCount()
51 */
52 @Override
53 public int getColumnCount() {
54 return 2;
55 }
56
57 /* (non-Javadoc)
58 * @see javax.swing.table.TableModel#getValueAt(int, int)
59 */
60 @Override
61 public Object getValueAt(int rowIndex, int columnIndex) {
62 Assembly a = assemblies.get(rowIndex);
63 if (columnIndex == 0) {
64 return a.toString();
65 } else if (columnIndex == 1) {
66 return a.chromosomes().size();
67 } else {
68 return null;
69 }
70 }
71
72 public Assembly getRow(int rowIndex) {
73 return assemblies.get(rowIndex);
74 }
75
76 public boolean containsAssembly(Assembly a) {
77 String aName = a.toString();
78 for (Assembly assembly : assemblies) {
79 if (assembly.toString().equalsIgnoreCase(aName)) {
80 return true;
81 }
82 }
83
84 return false;
85 }
86
87 public void addAssembly(Assembly a) {
88 assemblies.add(a);
89 fireTableRowsInserted(assemblies.size()-1, assemblies.size()-1);
90 }
91
92 public void removeRow(int rowIndex) {
93 assemblies.remove(rowIndex);
94 fireTableRowsDeleted(rowIndex, rowIndex);
95 }
96
97 }