]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.spreadsheet/src/org/simantics/spreadsheet/solver/SpreadsheetCellContent.java
Adopt spreadsheet changes made in Balas development
[simantics/platform.git] / bundles / org.simantics.spreadsheet / src / org / simantics / spreadsheet / solver / SpreadsheetCellContent.java
1 package org.simantics.spreadsheet.solver;
2
3 import java.util.Collections;
4 import java.util.Map;
5
6 @SuppressWarnings("rawtypes")
7 public class SpreadsheetCellContent implements SheetNode {
8
9     private static final long serialVersionUID = 6463195673537211769L;
10     
11     public final SpreadsheetCell cell;
12
13     public SpreadsheetCellContent(SpreadsheetCell cell) {
14         this.cell = cell;
15     }
16
17     @Override
18     public String getName() {
19         return "content";
20     }
21
22     @Override
23     public Map getChildren() {
24         return Collections.emptyMap();
25     }
26
27     @Override
28     public Map getProperties() {
29         if(cell.hasExpression()) {
30             return Collections.singletonMap("expression", new SpreadsheetCellContentExpression(cell));
31         } else {
32             return Collections.emptyMap();
33         }
34     }
35
36     @Override
37     public int hashCode() {
38         final int prime = 31;
39         int result = 1;
40         result = prime * result + ((cell == null) ? 0 : cell.hashCode());
41         return result;
42     }
43
44     @Override
45     public boolean equals(Object obj) {
46         if (this == obj)
47             return true;
48         if (obj == null)
49             return false;
50         if (getClass() != obj.getClass())
51             return false;
52         SpreadsheetCellContent other = (SpreadsheetCellContent) obj;
53         if (cell == null) {
54             if (other.cell != null)
55                 return false;
56         } else if (!cell.equals(other.cell))
57             return false;
58         return true;
59     }
60
61 }