KickJava   Java API By Example, From Geeks To Geeks.

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


1 package prefuse.visual.tuple;
2
3 import java.awt.BasicStroke JavaDoc;
4 import java.awt.Font JavaDoc;
5 import java.awt.Graphics2D JavaDoc;
6 import java.awt.geom.Rectangle2D JavaDoc;
7
8 import prefuse.Visualization;
9 import prefuse.data.Graph;
10 import prefuse.data.Table;
11 import prefuse.data.Tuple;
12 import prefuse.data.tuple.TableTuple;
13 import prefuse.data.tuple.TupleSet;
14 import prefuse.render.Renderer;
15 import prefuse.visual.VisualItem;
16 import prefuse.visual.VisualTable;
17
18 /**
19  * VisualItem implementation that uses data values from a backing VisualTable.
20  *
21  * @author <a HREF="http://jheer.org">jeffrey heer</a>
22  */

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

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

42     public Visualization getVisualization() {
43         return ((VisualTable)m_table).getVisualization();
44     }
45     
46     /**
47      * @see prefuse.visual.VisualItem#getGroup()
48      */

49     public String JavaDoc getGroup() {
50         return ((VisualTable)m_table).getGroup();
51     }
52     
53     /**
54      * @see prefuse.visual.VisualItem#isInGroup(java.lang.String)
55      */

56     public boolean isInGroup(String JavaDoc group) {
57         return getVisualization().isInGroup(this, group);
58     }
59     
60     /**
61      * @see prefuse.visual.VisualItem#getSourceData()
62      */

63     public TupleSet getSourceData() {
64         VisualTable vt = (VisualTable)m_table;
65         return vt.getVisualization().getSourceData(vt.getGroup());
66     }
67
68     /**
69      * @see prefuse.visual.VisualItem#getSourceTuple()
70      */

71     public Tuple getSourceTuple() {
72         VisualTable vt = (VisualTable)m_table;
73         return vt.getVisualization().getSourceTuple(this);
74     }
75     
76     /**
77      * @see java.lang.Object#toString()
78      */

79     public String JavaDoc toString() {
80         StringBuffer JavaDoc sbuf = new StringBuffer JavaDoc();
81         sbuf.append("VisualItem[").append(getGroup());
82         sbuf.append(",").append(m_row).append(',');
83         VisualTable vt = (VisualTable)m_table;
84         int local = vt.getLocalColumnCount();
85         int inherited = vt.getColumnCount()-local;
86         for ( int i=0; i<inherited; ++i ) {
87             if ( i > 0 ) sbuf.append(',');
88             String JavaDoc name = vt.getColumnName(local+i);
89             sbuf.append(name);
90             sbuf.append('=');
91             if ( vt.canGetString(name) )
92                 sbuf.append(vt.getString(m_row, name));
93             else
94                 sbuf.append(vt.get(m_row, name).toString());
95         }
96         sbuf.append(']');
97         
98         return sbuf.toString();
99     }
100     
101     // ------------------------------------------------------------------------
102
// VisualItem Methods
103

104     /**
105      * @see prefuse.visual.VisualItem#render(java.awt.Graphics2D)
106      */

107     public void render(Graphics2D JavaDoc g) {
108         getRenderer().render(g, this);
109     }
110     
111     /**
112      * @see prefuse.visual.VisualItem#getRenderer()
113      */

114     public Renderer getRenderer() {
115         return getVisualization().getRenderer(this);
116     }
117     
118     /**
119      * @see prefuse.visual.VisualItem#validateBounds()
120      */

121     public Rectangle2D JavaDoc validateBounds() {
122         if ( isValidated() ) return getBounds();
123         
124         Visualization v = getVisualization();
125                 
126         // set the new bounds from the renderer and validate
127
getRenderer().setBounds(this);
128         setValidated(true);
129         
130         // report damage from the new bounds and return
131
Rectangle2D JavaDoc bounds = getBounds();
132         v.damageReport(this, bounds);
133         return bounds;
134     }
135     
136     // -- Boolean Flags -------------------------------------------------------
137

138     /**
139      * @see prefuse.visual.VisualItem#isValidated()
140      */

141     public boolean isValidated() {
142         return ((VisualTable)m_table).isValidated(m_row);
143     }
144     
145     /**
146      * @see prefuse.visual.VisualItem#setValidated(boolean)
147      */

148     public void setValidated(boolean value) {
149         ((VisualTable)m_table).setValidated(m_row, value);
150     }
151     
152     /**
153      * @see prefuse.visual.VisualItem#isVisible()
154      */

155     public boolean isVisible() {
156         return ((VisualTable)m_table).isVisible(m_row);
157     }
158     
159     /**
160      * @see prefuse.visual.VisualItem#setVisible(boolean)
161      */

162     public void setVisible(boolean value) {
163         ((VisualTable)m_table).setVisible(m_row, value);
164     }
165     
166     /**
167      * @see prefuse.visual.VisualItem#isStartVisible()
168      */

169     public boolean isStartVisible() {
170         return ((VisualTable)m_table).isStartVisible(m_row);
171     }
172     
173     /**
174      * @see prefuse.visual.VisualItem#setStartVisible(boolean)
175      */

176     public void setStartVisible(boolean value) {
177         ((VisualTable)m_table).setStartVisible(m_row, value);
178     }
179     
180     /**
181      * @see prefuse.visual.VisualItem#isEndVisible()
182      */

183     public boolean isEndVisible() {
184         return ((VisualTable)m_table).isEndVisible(m_row);
185     }
186     
187     /**
188      * @see prefuse.visual.VisualItem#setEndVisible(boolean)
189      */

190     public void setEndVisible(boolean value) {
191         ((VisualTable)m_table).setEndVisible(m_row, value);
192     }
193     
194     /**
195      * @see prefuse.visual.VisualItem#isInteractive()
196      */

197     public boolean isInteractive() {
198         return ((VisualTable)m_table).isInteractive(m_row);
199     }
200
201     /**
202      * @see prefuse.visual.VisualItem#setInteractive(boolean)
203      */

204     public void setInteractive(boolean value) {
205         ((VisualTable)m_table).setInteractive(m_row, value);
206     }
207     
208     /**
209      * @see prefuse.visual.VisualItem#isExpanded()
210      */

211     public boolean isExpanded() {
212         return ((VisualTable)m_table).isExpanded(m_row);
213     }
214
215     /**
216      * @see prefuse.visual.VisualItem#setExpanded(boolean)
217      */

218     public void setExpanded(boolean value) {
219         ((VisualTable)m_table).setExpanded(m_row, value);
220     }
221     
222     /**
223      * @see prefuse.visual.VisualItem#isFixed()
224      */

225     public boolean isFixed() {
226         return ((VisualTable)m_table).isFixed(m_row);
227     }
228
229     /**
230      * @see prefuse.visual.VisualItem#setFixed(boolean)
231      */

232     public void setFixed(boolean value) {
233         ((VisualTable)m_table).setFixed(m_row, value);
234     }
235     
236     /**
237      * @see prefuse.visual.VisualItem#isHighlighted()
238      */

239     public boolean isHighlighted() {
240         return ((VisualTable)m_table).isHighlighted(m_row);
241     }
242     
243     /**
244      * @see prefuse.visual.VisualItem#setHighlighted(boolean)
245      */

246     public void setHighlighted(boolean value) {
247         ((VisualTable)m_table).setHighlighted(m_row, value);
248     }
249
250     /**
251      * @see prefuse.visual.VisualItem#isHover()
252      */

253     public boolean isHover() {
254         return ((VisualTable)m_table).isHover(m_row);
255     }
256     
257     /**
258      * @see prefuse.visual.VisualItem#setHover(boolean)
259      */

260     public void setHover(boolean value) {
261         ((VisualTable)m_table).setHover(m_row, value);
262     }
263     
264     // ------------------------------------------------------------------------
265

266     /**
267      * @see prefuse.visual.VisualItem#getX()
268      */

269     public double getX() {
270         return ((VisualTable)m_table).getX(m_row);
271     }
272     
273     /**
274      * @see prefuse.visual.VisualItem#setX(double)
275      */

276     public void setX(double x) {
277         ((VisualTable)m_table).setX(m_row, x);
278     }
279     
280     /**
281      * @see prefuse.visual.VisualItem#getY()
282      */

283     public double getY() {
284         return ((VisualTable)m_table).getY(m_row);
285     }
286     
287     /**
288      * @see prefuse.visual.VisualItem#setY(double)
289      */

290     public void setY(double y) {
291         ((VisualTable)m_table).setY(m_row, y);
292     }
293     
294     /**
295      * @see prefuse.visual.VisualItem#getStartX()
296      */

297     public double getStartX() {
298         return ((VisualTable)m_table).getStartX(m_row);
299     }
300     
301     /**
302      * @see prefuse.visual.VisualItem#setStartX(double)
303      */

304     public void setStartX(double x) {
305         ((VisualTable)m_table).setStartX(m_row, x);
306     }
307     
308     /**
309      * @see prefuse.visual.VisualItem#getStartY()
310      */

311     public double getStartY() {
312         return ((VisualTable)m_table).getStartY(m_row);
313     }
314     
315     /**
316      * @see prefuse.visual.VisualItem#setStartY(double)
317      */

318     public void setStartY(double y) {
319         ((VisualTable)m_table).setStartY(m_row, y);
320     }
321     
322     /**
323      * @see prefuse.visual.VisualItem#getEndX()
324      */

325     public double getEndX() {
326         return ((VisualTable)m_table).getEndX(m_row);
327     }
328     
329     /**
330      * @see prefuse.visual.VisualItem#setEndX(double)
331      */

332     public void setEndX(double x) {
333         ((VisualTable)m_table).setEndX(m_row, x);
334     }
335     
336     /**
337      * @see prefuse.visual.VisualItem#getEndY()
338      */

339     public double getEndY() {
340         return ((VisualTable)m_table).getEndY(m_row);
341     }
342     
343     /**
344      * @see prefuse.visual.VisualItem#setEndY(double)
345      */

346     public void setEndY(double y) {
347         ((VisualTable)m_table).setEndY(m_row, y);
348     }
349
350     /**
351      * @see prefuse.visual.VisualItem#getBounds()
352      */

353     public Rectangle2D JavaDoc getBounds() {
354         if ( !isValidated() ) {
355             return validateBounds();
356         }
357         return ((VisualTable)m_table).getBounds(m_row);
358     }
359     
360     /**
361      * @see prefuse.visual.VisualItem#setBounds(double, double, double, double)
362      */

363     public void setBounds(double x, double y, double w, double h) {
364         ((VisualTable)m_table).setBounds(m_row, x, y, w, h);
365     }
366     
367     // ------------------------------------------------------------------------
368

369     /**
370      * @see prefuse.visual.VisualItem#getStrokeColor()
371      */

372     public int getStrokeColor() {
373         return ((VisualTable)m_table).getStrokeColor(m_row);
374     }
375     
376     /**
377      * @see prefuse.visual.VisualItem#setStrokeColor(int)
378      */

379     public void setStrokeColor(int color) {
380         ((VisualTable)m_table).setStrokeColor(m_row, color);
381     }
382     
383     /**
384      * @see prefuse.visual.VisualItem#getStartStrokeColor()
385      */

386     public int getStartStrokeColor() {
387         return ((VisualTable)m_table).getStartStrokeColor(m_row);
388     }
389     
390     /**
391      * @see prefuse.visual.VisualItem#setStartStrokeColor(int)
392      */

393     public void setStartStrokeColor(int color) {
394         ((VisualTable)m_table).setStartStrokeColor(m_row, color);
395     }
396     
397     /**
398      * @see prefuse.visual.VisualItem#getEndStrokeColor()
399      */

400     public int getEndStrokeColor() {
401         return ((VisualTable)m_table).getEndStrokeColor(m_row);
402     }
403     
404     /**
405      * @see prefuse.visual.VisualItem#setEndStrokeColor(int)
406      */

407     public void setEndStrokeColor(int color) {
408         ((VisualTable)m_table).setEndStrokeColor(m_row, color);
409     }
410     
411     /**
412      * @see prefuse.visual.VisualItem#getFillColor()
413      */

414     public int getFillColor() {
415         return ((VisualTable)m_table).getFillColor(m_row);
416     }
417     
418     /**
419      * @see prefuse.visual.VisualItem#setFillColor(int)
420      */

421     public void setFillColor(int color) {
422         ((VisualTable)m_table).setFillColor(m_row, color);
423     }
424     
425     /**
426      * @see prefuse.visual.VisualItem#getStartFillColor()
427      */

428     public int getStartFillColor() {
429         return ((VisualTable)m_table).getStartFillColor(m_row);
430     }
431
432     /**
433      * @see prefuse.visual.VisualItem#setStartFillColor(int)
434      */

435     public void setStartFillColor(int color) {
436         ((VisualTable)m_table).setStartFillColor(m_row, color);
437     }
438     
439     /**
440      * @see prefuse.visual.VisualItem#getEndFillColor()
441      */

442     public int getEndFillColor() {
443         return ((VisualTable)m_table).getEndFillColor(m_row);
444     }
445     
446     /**
447      * @see prefuse.visual.VisualItem#setEndFillColor(int)
448      */

449     public void setEndFillColor(int color) {
450         ((VisualTable)m_table).setEndFillColor(m_row, color);
451     }
452     
453     /**
454      * @see prefuse.visual.VisualItem#getTextColor()
455      */

456     public int getTextColor() {
457         return ((VisualTable)m_table).getTextColor(m_row);
458     }
459     
460     /**
461      * @see prefuse.visual.VisualItem#setTextColor(int)
462      */

463     public void setTextColor(int color) {
464         ((VisualTable)m_table).setTextColor(m_row, color);
465     }
466     
467     /**
468      * @see prefuse.visual.VisualItem#getStartTextColor()
469      */

470     public int getStartTextColor() {
471         return ((VisualTable)m_table).getStartTextColor(m_row);
472     }
473     
474     /**
475      * @see prefuse.visual.VisualItem#setStartTextColor(int)
476      */

477     public void setStartTextColor(int color) {
478         ((VisualTable)m_table).setStartTextColor(m_row, color);
479     }
480     
481     /**
482      * @see prefuse.visual.VisualItem#getEndTextColor()
483      */

484     public int getEndTextColor() {
485         return ((VisualTable)m_table).getEndTextColor(m_row);
486     }
487     
488     /**
489      * @see prefuse.visual.VisualItem#setEndTextColor(int)
490      */

491     public void setEndTextColor(int color) {
492         ((VisualTable)m_table).setEndTextColor(m_row, color);
493     }
494     
495     // ------------------------------------------------------------------------
496

497     /**
498      * @see prefuse.visual.VisualItem#getSize()
499      */

500     public double getSize() {
501         return ((VisualTable)m_table).getSize(m_row);
502     }
503     
504     /**
505      * @see prefuse.visual.VisualItem#setSize(double)
506      */

507     public void setSize(double size) {
508         ((VisualTable)m_table).setSize(m_row, size);
509     }
510     
511     /**
512      * @see prefuse.visual.VisualItem#getStartSize()
513      */

514     public double getStartSize() {
515         return ((VisualTable)m_table).getStartSize(m_row);
516     }
517     
518     /**
519      * @see prefuse.visual.VisualItem#setStartSize(double)
520      */

521     public void setStartSize(double size) {
522         ((VisualTable)m_table).setStartSize(m_row, size);
523     }
524     
525     /**
526      * @see prefuse.visual.VisualItem#getEndSize()
527      */

528     public double getEndSize() {
529         return ((VisualTable)m_table).getEndSize(m_row);
530     }
531     
532     /**
533      * @see prefuse.visual.VisualItem#setEndSize(double)
534      */

535     public void setEndSize(double size) {
536         ((VisualTable)m_table).setEndSize(m_row, size);
537     }
538     
539     // ------------------------------------------------------------------------
540

541     /**
542      * @see prefuse.visual.VisualItem#getShape()
543      */

544     public int getShape() {
545         return ((VisualTable)m_table).getShape(m_row);
546     }
547     
548     /**
549      * @see prefuse.visual.VisualItem#setShape(int)
550      */

551     public void setShape(int shape) {
552         ((VisualTable)m_table).setShape(m_row, shape);
553     }
554     
555     // ------------------------------------------------------------------------
556

557     /**
558      * @see prefuse.visual.VisualItem#getStroke()
559      */

560     public BasicStroke JavaDoc getStroke() {
561         return ((VisualTable)m_table).getStroke(m_row);
562     }
563     
564     /**
565      * @see prefuse.visual.VisualItem#setStroke(java.awt.BasicStroke)
566      */

567     public void setStroke(BasicStroke JavaDoc stroke) {
568         ((VisualTable)m_table).setStroke(m_row, stroke);
569     }
570     
571     // ------------------------------------------------------------------------
572

573     /**
574      * @see prefuse.visual.VisualItem#getFont()
575      */

576     public Font JavaDoc getFont() {
577         return ((VisualTable)m_table).getFont(m_row);
578     }
579
580     /**
581      * @see prefuse.visual.VisualItem#setFont(java.awt.Font)
582      */

583     public void setFont(Font JavaDoc font) {
584         ((VisualTable)m_table).setFont(m_row, font);
585     }
586     
587     /**
588      * @see prefuse.visual.VisualItem#getStartFont()
589      */

590     public Font JavaDoc getStartFont() {
591         return ((VisualTable)m_table).getStartFont(m_row);
592     }
593
594     /**
595      * @see prefuse.visual.VisualItem#setStartFont(java.awt.Font)
596      */

597     public void setStartFont(Font JavaDoc font) {
598         ((VisualTable)m_table).setStartFont(m_row, font);
599     }
600     
601     /**
602      * @see prefuse.visual.VisualItem#getEndFont()
603      */

604     public Font JavaDoc getEndFont() {
605         return ((VisualTable)m_table).getEndFont(m_row);
606     }
607     
608     /**
609      * @see prefuse.visual.VisualItem#setEndFont(java.awt.Font)
610      */

611     public void setEndFont(Font JavaDoc font) {
612         ((VisualTable)m_table).setEndFont(m_row, font);
613     }
614     
615     // ------------------------------------------------------------------------
616

617     /**
618      * @see prefuse.visual.VisualItem#getDOI()
619      */

620     public double getDOI() {
621         return ((VisualTable)m_table).getDOI(m_row);
622     }
623     
624     /**
625      * @see prefuse.visual.VisualItem#setDOI(double)
626      */

627     public void setDOI(double doi) {
628         ((VisualTable)m_table).setDOI(m_row, doi);
629     }
630     
631 } // end of class TableVisualItem
632
Popular Tags