KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > prefuse > visual > tuple > TableAggregateItem


1 /**
2  * Copyright (c) 2004-2006 Regents of the University of California.
3  * See "license-prefuse.txt" for licensing terms.
4  */

5 package prefuse.visual.tuple;
6
7 import java.util.Iterator JavaDoc;
8
9 import prefuse.data.Graph;
10 import prefuse.data.Table;
11 import prefuse.data.expression.Predicate;
12 import prefuse.data.util.FilterIterator;
13 import prefuse.visual.AggregateItem;
14 import prefuse.visual.AggregateTable;
15 import prefuse.visual.VisualItem;
16
17 /**
18  * AggregateItem implementation that uses data values from a backing
19  * AggregateTable.
20  *
21  * @author <a HREF="http://jheer.org">jeffrey heer</a>
22  */

23 public class TableAggregateItem extends TableVisualItem
24     implements AggregateItem
25 {
26     /**
27      * Initialize a new TableAggregateItem for the given table and row. This
28      * method is used by the appropriate TupleManager instance, and should not
29      * be called directly by client code, unless by a client-supplied custom
30      * TupleManager.
31      * @param table the data Table
32      * @param graph ignored by this class
33      * @param row the table row index
34      */

35     protected void init(Table table, Graph graph, int row) {
36         m_table = table;
37         m_row = m_table.isValidRow(row) ? row : -1;
38     }
39
40     /**
41      * @see prefuse.visual.AggregateItem#getAggregateSize()
42      */

43     public int getAggregateSize() {
44         return ((AggregateTable)m_table).getAggregateSize(m_row);
45     }
46
47     /**
48      * @see prefuse.visual.AggregateItem#containsItem(prefuse.visual.VisualItem)
49      */

50     public boolean containsItem(VisualItem item) {
51         return ((AggregateTable)m_table).aggregateContains(m_row, item);
52     }
53
54     /**
55      * @see prefuse.visual.AggregateItem#addItem(prefuse.visual.VisualItem)
56      */

57     public void addItem(VisualItem item) {
58         ((AggregateTable)m_table).addToAggregate(m_row, item);
59     }
60
61     /**
62      * @see prefuse.visual.AggregateItem#removeItem(prefuse.visual.VisualItem)
63      */

64     public void removeItem(VisualItem item) {
65         ((AggregateTable)m_table).removeFromAggregate(m_row, item);
66     }
67
68     /**
69      * @see prefuse.visual.AggregateItem#removeAllItems()
70      */

71     public void removeAllItems() {
72         ((AggregateTable)m_table).removeAllFromAggregate(m_row);
73     }
74
75     /**
76      * @see prefuse.visual.AggregateItem#items()
77      */

78     public Iterator JavaDoc items() {
79         return ((AggregateTable)m_table).aggregatedTuples(m_row);
80     }
81     
82     /**
83      * @see prefuse.visual.AggregateItem#items()
84      */

85     public Iterator JavaDoc items(Predicate filter) {
86         return new FilterIterator(
87             ((AggregateTable)m_table).aggregatedTuples(m_row), filter);
88     }
89
90 } // end of class TableAggregateItem
91
Popular Tags