Skip to content

Package: MainViewTableArea

MainViewTableArea

nameinstructionbranchcomplexitylinemethod
MainViewTableArea(MainView)
M: 20 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 7 C: 0
0%
M: 1 C: 0
0%
configJScrollPane()
M: 56 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 10 C: 0
0%
M: 1 C: 0
0%
configJTable()
M: 21 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 4 C: 0
0%
M: 1 C: 0
0%
getTable()
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
update(Observable, Object)
M: 56 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 11 C: 0
0%
M: 1 C: 0
0%

Coverage

1: package gui.view;
2:
3: import java.awt.Color;
4: import java.util.ArrayList;
5: import java.util.Observable;
6:
7: import javax.swing.JScrollPane;
8: import javax.swing.JTable;
9: import javax.swing.SpringLayout;
10: import javax.swing.border.BevelBorder;
11:
12: import gui.datamodels.AssignmentTableDataModel;
13: import model.assignment.AssignmentFile;
14: import model.assignment.VariableAssignment;
15:
16: /**
17: * The table area of the mainview.
18: *
19: * @author Phil
20: *
21: */
22: public class MainViewTableArea implements java.util.Observer {
23:         /**
24:          * The mainview.
25:          */
26:         private final MainView mainView;
27:
28:         /**
29:          * The table.
30:          */
31:
32:         private final JTable table;
33:         /**
34:          * The ScrollPane contains the table.
35:          */
36:         private final JScrollPane scrollPaneTable;
37:
38:         /**
39:          *
40:          * @param mainView
41:          * The mainview to set.
42:          */
43:         public MainViewTableArea(final MainView mainView) {
44:                 super();
45:                 this.mainView = mainView;
46:                 this.table = new JTable();
47:                 this.scrollPaneTable = new JScrollPane();
48:                 this.configJTable();
49:                 this.configJScrollPane();
50:
51:         }
52:
53:         /**
54:          * method for set padding, width and height of JScrollPane.
55:          */
56:         private void configJScrollPane() {
57:                 this.mainView.getSlRightTablePanel().putConstraint(SpringLayout.NORTH,
58:                                 this.scrollPaneTable, 0, SpringLayout.NORTH, this.mainView.getRightTablePanel());
59:                 this.mainView.getSlRightTablePanel().putConstraint(SpringLayout.EAST,
60:                                 this.scrollPaneTable, 0, SpringLayout.EAST, this.mainView.getRightTablePanel());
61:                 this.mainView.getSlRightTablePanel().putConstraint(SpringLayout.SOUTH,
62:                                 this.scrollPaneTable, 0, SpringLayout.SOUTH, this.mainView.getRightTablePanel());
63:                 this.mainView.getSlRightTablePanel().putConstraint(SpringLayout.WEST,
64:                                 this.scrollPaneTable, 0, SpringLayout.WEST, this.mainView.getRightTablePanel());
65:
66:                 this.mainView.getRightTablePanel().add(this.scrollPaneTable);
67:         }
68:
69:         /**
70:          * method for set the design of the border of JTable.
71:          */
72:         private void configJTable() {
73:                 this.table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
74:                 this.scrollPaneTable.setViewportView(this.table);
75:                 this.table.setBorder(new BevelBorder(BevelBorder.RAISED, Color.DARK_GRAY, Color.GRAY,
76:                                 Color.LIGHT_GRAY, Color.WHITE));
77:         }
78:
79:         /**
80:          * @return the table
81:          */
82:         public JTable getTable() {
83:                 return this.table;
84:         }
85:
86:         @Override
87:         public void update(final Observable o, final Object arg) {
88:                 final AssignmentFile af = (AssignmentFile) o;
89:                 final AssignmentTableDataModel dataModel = new AssignmentTableDataModel(
90:                                 new ArrayList<VariableAssignment>(af.getAssignments().values()));
91:                 this.table.setModel(dataModel);
92:
93:                 this.table.getColumnModel().getColumn(0).setResizable(true);
94:                 this.table.getColumnModel().getColumn(0).setPreferredWidth(
95:                                 this.mainView.getRightTablePanel().getWidth() / basic.GuiConstants.ASSIGNDIVIDE);
96:                 this.table.getColumnModel().getColumn(1).setResizable(true);
97:                 this.table.getColumnModel().getColumn(1).setPreferredWidth(
98:                                 this.mainView.getRightTablePanel().getWidth() / basic.GuiConstants.ASSIGNDIVIDE);
99:         }
100:
101: }