Author: ruschein
Date: 2010-12-10 10:29:59 -0800 (Fri, 10 Dec 2010)
New Revision: 23160
Modified:
core3/model-api/trunk/src/main/java/org/cytoscape/model/CyTable.java
core3/model-api/trunk/src/test/java/org/cytoscape/model/AbstractCyTableTest.java
core3/model-impl/trunk/impl/src/main/java/org/cytoscape/model/internal/CyTableImpl.java
core3/table-browser-impl/trunk/src/main/java/org/cytoscape/browser/internal/ui/CyAttributeBrowserTable.java
Log:
Added getType() and getRowCount() to the CyTable API.
Modified: core3/model-api/trunk/src/main/java/org/cytoscape/model/CyTable.java
===================================================================
--- core3/model-api/trunk/src/main/java/org/cytoscape/model/CyTable.java
2010-12-10 17:45:34 UTC (rev 23159)
+++ core3/model-api/trunk/src/main/java/org/cytoscape/model/CyTable.java
2010-12-10 18:29:59 UTC (rev 23160)
@@ -75,6 +75,14 @@
Class<?> getPrimaryKeyType();
/**
+ * Returns the class type of a column for this table.
+ * @param columnName The name of the column whose type we desire.
+ * @return The class type of the column whose column name was provided,
or null if there is
+ * no column named "columnName".
+ */
+ Class<?> getType(String columnName);
+
+ /**
* The keySet of this map defines all columns in the CyTable and the
* the values of this map define the types of the columns.
* @return A map of column names to the {...@link Class} objects that
defines
@@ -149,4 +157,9 @@
* @return the rows, if any that contain the value "value" for the
column "columnName"
*/
Set<CyRow> getMatchingRows(String columnName, Object value);
+
+ /** Returns the number of rows in this table.
+ * @return The number if rows in the table.
+ */
+ int getRowCount();
}
Modified:
core3/model-api/trunk/src/test/java/org/cytoscape/model/AbstractCyTableTest.java
===================================================================
---
core3/model-api/trunk/src/test/java/org/cytoscape/model/AbstractCyTableTest.java
2010-12-10 17:45:34 UTC (rev 23159)
+++
core3/model-api/trunk/src/test/java/org/cytoscape/model/AbstractCyTableTest.java
2010-12-10 18:29:59 UTC (rev 23160)
@@ -515,4 +515,17 @@
assertEquals((long)(Long)values.get("x"), 15L);
assertEquals((double)(Double)values.get("y"), 3.14, 0.00001);
}
+
+ @Test
+ public void testGetType() {
+ table.createColumn("someInt", Integer.class);
+ assertEquals(table.getType("someInt"), Integer.class);
+ assertNull(table.getType("nonExistentColumnName"));
+ }
+
+ @Test
+ public void testGetRowCount() {
+ final CyRow row = table.getRow(2L);
+ assertEquals(table.getRowCount(), table.getAllRows().size());
+ }
}
Modified:
core3/model-impl/trunk/impl/src/main/java/org/cytoscape/model/internal/CyTableImpl.java
===================================================================
---
core3/model-impl/trunk/impl/src/main/java/org/cytoscape/model/internal/CyTableImpl.java
2010-12-10 17:45:34 UTC (rev 23159)
+++
core3/model-impl/trunk/impl/src/main/java/org/cytoscape/model/internal/CyTableImpl.java
2010-12-10 18:29:59 UTC (rev 23160)
@@ -177,6 +177,10 @@
return Collections.unmodifiableMap(types);
}
+ public Class<?> getType(final String columnName) {
+ return types.get(columnName);
+ }
+
public Class<?> getListElementType(final String columnName) {
final Class<?> listElementType =
listElementTypes.get(columnName);
if (listElementType == null)
@@ -193,6 +197,10 @@
return primaryKeyType;
}
+ public int getRowCount() {
+ return rows.size();
+ }
+
/**
* DOCUMENT ME!
*
Modified:
core3/table-browser-impl/trunk/src/main/java/org/cytoscape/browser/internal/ui/CyAttributeBrowserTable.java
===================================================================
---
core3/table-browser-impl/trunk/src/main/java/org/cytoscape/browser/internal/ui/CyAttributeBrowserTable.java
2010-12-10 17:45:34 UTC (rev 23159)
+++
core3/table-browser-impl/trunk/src/main/java/org/cytoscape/browser/internal/ui/CyAttributeBrowserTable.java
2010-12-10 18:29:59 UTC (rev 23160)
@@ -15,11 +15,11 @@
import static org.cytoscape.browser.internal.DataObjectType.NETWORK;
import static org.cytoscape.browser.internal.DataObjectType.NODES;
-import giny.model.Edge;
-import giny.model.GraphObject;
-import giny.model.Node;
-import giny.view.EdgeView;
-import giny.view.NodeView;
+import org.cytoscape.model.CyEdge;
+import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyTableEntry;
+import org.cytoscape.model.CyTableManager;
+import org.cytoscape.view.model.View;
import java.awt.Color;
import java.awt.Component;
@@ -285,9 +285,9 @@
return newColor;
}
- protected Edge getEdge(final String edgeString) {
+ protected CyEdge getEdge(final String edgeString) {
String[] edgeNameParts = edgeString.split(" \\(");
- final Node source = Cytoscape.getCyNode(edgeNameParts[0]);
+ final CyNode source = Cytoscape.getCyNode(edgeNameParts[0]);
edgeNameParts = edgeNameParts[1].split("\\) ");
final String interaction = edgeNameParts[0];
@@ -296,9 +296,9 @@
return Cytoscape.getCyEdge(source, target,
Semantics.INTERACTION, interaction, false);
}
- private Map<String, GraphObject> paintNodesAndEdges(int idLocation) {
+ private Map<String, CyTableEntry> paintNodesAndEdges(int idLocation) {
final int[] rowsSelected = getSelectedRows();
- final Map<String, GraphObject> selectedMap = new
HashMap<String, GraphObject>();
+ final Map<String, CyTableEntry> selectedMap = new
HashMap<String, CyTableEntry>();
final int selectedRowLength = rowsSelected.length;
final CyNetworkView netView = Cytoscape.getCurrentNetworkView();
@@ -318,7 +318,7 @@
selectedMap.put(selectedName, selectedNode);
if (netView != Cytoscape.getNullNetworkView()) {
- final NodeView nv =
netView.getNodeView(selectedNode);
+ final View<CyNode> nv =
netView.getNodeView(selectedNode);
if (nv != null)
nv.setSelectedPaint(reverseSelectedNodeColor);
}
@@ -327,7 +327,7 @@
selectedMap.put(selectedName, selectedEdge);
if (netView != Cytoscape.getNullNetworkView()) {
- final EdgeView ev =
netView.getEdgeView(selectedEdge);
+ final View<CyEdge> ev =
netView.getEdgeView(selectedEdge);
if (ev != null)
ev.setSelectedPaint(reverseSelectedEdgeColor);
}
@@ -339,7 +339,7 @@
private void resetObjectColor(int idLocation) {
final CyNetworkView view = Cytoscape.getCurrentNetworkView();
- if ((view == Cytoscape.getNullNetworkView()) || (view == null))
+ if (view == null)
return;
final int rowCount = dataModel.getRowCount();
@@ -357,14 +357,14 @@
// Set to the original color
if (selectedNode != null) {
- final NodeView nv =
view.getNodeView(selectedNode);
+ final View<CyNode> nv =
view.getNodeView(selectedNode);
if (nv != null)
nv.setSelectedPaint(selectedNodeColor);
}
} else if (objectType == EDGES) {
final Edge selectedEdge =
this.getEdge(objectName);
if (selectedEdge != null) {
- final EdgeView ev =
view.getEdgeView(selectedEdge);
+ final View<CyEdge> ev =
view.getEdgeView(selectedEdge);
if (ev != null)
ev.setSelectedPaint(selectedEdgeColor);
}
@@ -474,19 +474,19 @@
newSelectionMenuItem.addActionListener(new
java.awt.event.ActionListener() {
public void actionPerformed(final ActionEvent
e) {
final int idLocation = getIdColumn();
- final Map<String, GraphObject>
selectedMap = paintNodesAndEdges(idLocation);
+ final Map<String, CyTableEntry>
selectedMap = paintNodesAndEdges(idLocation);
final CyNetwork curNet =
Cytoscape.getCurrentNetwork();
- final List<GraphObject>
nonSelectedObjects = new ArrayList<GraphObject>();
+ final List<CyTableEntry>
nonSelectedObjects = new ArrayList<CyTableEntry>();
- GraphObject fromMap;
+ CyTableEntry fromMap;
if (objectType == NODES) {
for (Object curNode :
curNet.getSelectedNodes()) {
fromMap =
selectedMap.get(((Node) curNode).getIdentifier());
if (fromMap == null) {
-
nonSelectedObjects.add((GraphObject) curNode);
+
nonSelectedObjects.add((CyTableEntry) curNode);
}
}
@@ -497,7 +497,7 @@
fromMap =
selectedMap.get(((Edge) curEdge).getIdentifier());
if (fromMap == null) {
-
nonSelectedObjects.add((GraphObject) curEdge);
+
nonSelectedObjects.add((CyTableEntry) curEdge);
}
}
@@ -1143,9 +1143,9 @@
return;
}
- final List<GraphObject> selectedGraphObjects =
tableModel.getObjects();
+ final List<CyTableEntry> selectedCyTableEntries =
tableModel.getObjects();
final StringBuilder errorMessage = new StringBuilder();
- for (final GraphObject graphObject : selectedGraphObjects)
+ for (final CyTableEntry graphObject : selectedCyTableEntries)
CyAttributesUtils.copyAttribute(attribs, rowId,
graphObject.getIdentifier(),
attribName, /*
copyEquation = */ false, errorMessage);
tableModel.updateColumn(attribs.getAttribute(rowId,
attribName), tableColumn, tableRow);
@@ -1169,9 +1169,9 @@
return;
}
- final List<GraphObject> selectedGraphObjects =
tableModel.getObjects();
+ final List<CyTableEntry> selectedCyTableEntries =
tableModel.getObjects();
final StringBuilder errorMessage = new StringBuilder();
- for (final GraphObject graphObject : selectedGraphObjects)
+ for (final CyTableEntry graphObject : selectedCyTableEntries)
CyAttributesUtils.copyAttribute(attribs, rowId,
graphObject.getIdentifier(),
attribName, /*
copyEquation = */ true, errorMessage);
final Equation equation = attribs.getEquation(rowId,
attribName);
@@ -1401,7 +1401,7 @@
tableModel.setSelectedColor(CyAttributeBrowserTable.SELECTED_NODE);
tableModel.setSelectedColor(CyAttributeBrowserTable.REV_SELECTED_NODE);
- tableModel.setTableData(new
ArrayList<GraphObject>(Cytoscape.getCurrentNetwork()
+ tableModel.setTableData(new
ArrayList<CyTableEntry>(Cytoscape.getCurrentNetwork()
.getSelectedNodes()), null);
} else if ((objectType == EDGES)
&& ((event.getTargetType() ==
SelectEvent.SINGLE_EDGE)
@@ -1410,7 +1410,7 @@
// edge selection
tableModel.setSelectedColor(CyAttributeBrowserTable.SELECTED_EDGE);
tableModel.setSelectedColor(CyAttributeBrowserTable.REV_SELECTED_EDGE);
- tableModel.setTableData(new
ArrayList<GraphObject>(Cytoscape.getCurrentNetwork()
+ tableModel.setTableData(new
ArrayList<CyTableEntry>(Cytoscape.getCurrentNetwork()
.getSelectedEdges()), null);
}
--
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en.