001 /* 002 * Created by IntelliJ IDEA. 003 * User: Wei Wang 004 * Date: 2002-8-29 005 * Time: 13:31:24 006 * To change template for new class use 007 * Code Style | Class Templates options (Tools | IDE Options). 008 */ 009 package EVolve.util; 010 011 import EVolve.*; 012 import EVolve.visualization.*; 013 import java.util.ArrayList; 014 import java.util.HashMap; 015 016 public class PredefinedVisualizationRunner { 017 private ArrayList predefinedVizCollection; 018 private int selected; 019 020 public PredefinedVisualizationRunner() { 021 predefinedVizCollection = new ArrayList(); 022 selected = 0; 023 } 024 025 public int getSelected() { 026 return this.selected; 027 } 028 029 public void setSelected(int selected) { 030 this.selected = selected; 031 } 032 033 public int getPredefinedVisualizationNumber() { 034 return predefinedVizCollection.size(); 035 } 036 037 public String getConfigureName(int index) { 038 return ((PredefinedVisualization)predefinedVizCollection.get(index)).getName(); 039 } 040 041 public PredefinedVisualization getSelectedPredefinedViz() { 042 return predefinedVizCollection.size() == 0 ? null : (PredefinedVisualization)predefinedVizCollection.get(selected); 043 } 044 045 public PredefinedVisualization getPredefinedVizByIndex(int index) { 046 return (PredefinedVisualization)predefinedVizCollection.get(index); 047 } 048 049 public void addPredefinedVisualization(String filename, String configname) { 050 for (int i=0; i<predefinedVizCollection.size(); i++) { 051 PredefinedVisualization viz = (PredefinedVisualization)predefinedVizCollection.get(i); 052 if (viz.getFilename().equals(filename)) { 053 viz.setTranslated(false); 054 viz.setFilename(filename); 055 viz.setName(configname); 056 return; 057 } 058 } 059 PredefinedVisualization viz = new PredefinedVisualization(filename,configname); 060 predefinedVizCollection.add(predefinedVizCollection.size(),viz); 061 } 062 063 public boolean containsConfigure(String name) { 064 065 for (int i=0; i< predefinedVizCollection.size(); i++) { 066 if (((PredefinedVisualization)predefinedVizCollection.get(i)).getName().equals(name)) return true; 067 } 068 069 return false; 070 } 071 072 public int getIdFromName(String name) { 073 int retValue = -1; 074 for (int i=0; i< predefinedVizCollection.size(); i++) { 075 if (((PredefinedVisualization)predefinedVizCollection.get(i)).getName().equals(name)) retValue = i; 076 } 077 078 return retValue; 079 } 080 081 public void runPredefinedVisualization() { 082 Visualization visual = null; 083 PredefinedVisualization predefinedViz = getSelectedPredefinedViz(); 084 085 if (predefinedViz == null) return; 086 if (!predefinedViz.isTranslated()) predefinedViz.translateVizInfo(); 087 Scene.getVisualizationManager().cleanup(); 088 while (predefinedViz.hasNext()) { 089 VizInfo viz = predefinedViz.getNextVizInfo(); 090 HashMap mapConfig = new HashMap(); 091 mapConfig.put("Factory",viz.getFactory()); 092 mapConfig.put("Subject",viz.getSubject()); 093 mapConfig.put("Dimension",viz.getDimension()); 094 mapConfig.put("Predictor",viz.getPredictor()); 095 mapConfig.put("Interval",new Integer(viz.getInterval())); 096 mapConfig.put("BeginCall",new Integer(viz.getBeginCall())); 097 mapConfig.put("EndCall",new Integer(viz.getEndCall())); 098 mapConfig.put("Match",new Float(viz.getMatch())); 099 mapConfig.put("Options", viz.getOptions()); 100 101 visual = Scene.getVisualizationManager().newVisualization(((VisualizationFactory)mapConfig.get("Factory")).getName()); 102 103 visual.getWindow().setBounds(viz.getWindowPosition()); 104 visual.setName(viz.getTitle()); 105 visual.autoUpdateConfiguration(mapConfig); 106 } 107 Scene.getVisualizationManager().addAllVisualizations(); 108 Scene.getVisualizationManager().prepareListToBeVisualized(); 109 Scene.getFilter().selectAllFields(); 110 Scene.visualize(); 111 predefinedViz.reset(); 112 } 113 }