Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package model;
- import apartmentsapp.Flat;
- import javax.swing.table.AbstractTableModel;
- import java.util.List;
- /**
- * Created by clear on 18.10.2016.
- */
- public class ApartmentsTableModel extends AbstractTableModel {
- private String[] columnNames =
- {"district", "address", "area (sq.m)", "rooms", "price (USD)"};
- private List<Flat> flats;
- public ApartmentsTableModel(List<Flat> flats) {
- this.flats = flats;
- }
- @Override
- public int getColumnCount() {
- return columnNames.length;
- }
- @Override
- public String getColumnName(int column) {
- return columnNames[column];
- }
- @Override
- public int getRowCount() {
- return flats.size();
- }
- @Override
- public Class<?> getColumnClass(int column) {
- Class clazz = String.class;
- if (column == 3) {
- clazz = Integer.class;
- } else if (column == 2 || column == 4) {
- clazz = Double.class;
- } else {
- clazz = String.class;
- }
- return clazz;
- }
- @Override
- public boolean isCellEditable(int row, int column) {
- return false;
- }
- @Override
- public Object getValueAt(int row, int column) {
- Flat item = getFlatItem(row);
- switch (column) {
- case 0:
- return item.getDistrict();
- case 1:
- return item.getAddress();
- case 2:
- return item.getArea();
- case 3:
- return item.getRooms();
- case 4:
- return item.getPrice();
- default:
- return null;
- }
- }
- @Override
- public void setValueAt(Object value, int row, int column) {
- Flat item = getFlatItem(row);
- switch (column) {
- case 0:
- item.setDistrict((String) value);
- break;
- case 1:
- item.setAddress((String) value);
- break;
- case 2:
- item.setArea((Double) value);
- break;
- case 3:
- item.setRooms((Integer) value);
- break;
- case 4:
- item.setPrice((Double) value);
- break;
- }
- fireTableCellUpdated(row, column);
- }
- public Flat getFlatItem(int row) {
- return flats.get(row);
- }
- public void addFlatItem(Flat flat) {
- insertFlatItem(getRowCount(), flat);
- }
- public void addFlatItems(List<Flat> tempItems) {
- int rowCount = getRowCount();
- flats.addAll(tempItems);
- fireTableRowsInserted(rowCount, getRowCount() - 1);
- }
- public void clearAllItems() {
- flats.clear();
- fireTableRowsDeleted(0, getRowCount());
- }
- public void insertFlatItem(int row, Flat order) {
- flats.add(row, order);
- fireTableRowsInserted(row, row);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement