home *** CD-ROM | disk | FTP | other *** search
/ Symantec Visual Cafe for Java 2.5 / symantec-visual-cafe-2.5-database-dev-edition.iso / VCafe / JCLASS.BIN / KLG.JAR / jclass / chart / ArrayDataInterpretation.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-12-05  |  4.2 KB  |  226 lines

  1. package jclass.chart;
  2.  
  3. import java.util.Vector;
  4. import jclass.bwt.JCSerializable;
  5.  
  6. class ArrayDataInterpretation extends DataInterpretation implements JCSerializable {
  7.    ArrayDataInterpretation(ChartDataView var1) {
  8.       super(var1);
  9.    }
  10.  
  11.    void loadData(Chartable var1) {
  12.       int var2 = var1.getNumRows();
  13.       if (var2 < 2) {
  14.          boolean var7 = super.view.getIsBatched();
  15.          super.view.setIsBatched(true);
  16.          super.view.setX((double[])null);
  17.          super.view.setSeries((ChartDataViewSeries[])null);
  18.          super.view.setIsBatched(var7);
  19.       } else {
  20.          ChartDataViewSeries[] var3 = new ChartDataViewSeries[var2 - 1];
  21.          super.view.getSeries();
  22.          boolean var4 = super.view.getIsBatched();
  23.          super.view.setIsBatched(true);
  24.          super.view.setSeries((ChartDataViewSeries[])null);
  25.          super.view.setX(super.view.toDoubleArray(var1.getRow(0)));
  26.  
  27.          for(int var5 = 1; var5 < var2; ++var5) {
  28.             ChartDataViewSeries var6 = new ChartDataViewSeries((double[])null, super.view.toDoubleArray(var1.getRow(var5)), super.view);
  29.             var3[var5 - 1] = var6;
  30.             var6.setDrawingOrder(var5 - 1);
  31.          }
  32.  
  33.          super.view.setSeries(var3);
  34.          super.view.changed = true;
  35.          super.view.setIsBatched(var4);
  36.       }
  37.    }
  38.  
  39.    void loadDirectData(Chartable var1) {
  40.       int var2 = var1.getNumRows();
  41.       if (var2 >= 2) {
  42.          ChartDataViewSeries[] var3 = new ChartDataViewSeries[var2 - 1];
  43.          boolean var4 = super.view.getIsBatched();
  44.          super.view.setIsBatched(true);
  45.          super.view.setSeries((ChartDataViewSeries[])null);
  46.  
  47.          for(int var5 = 1; var5 < var2; ++var5) {
  48.             DirectChartDataViewSeries var6 = new DirectChartDataViewSeries((DirectChartDataView)super.view);
  49.             var3[var5 - 1] = var6;
  50.             ((ChartDataViewSeries)var6).setDrawingOrder(var5 - 1);
  51.          }
  52.  
  53.          super.view.setSeries(var3);
  54.          super.view.changed = true;
  55.          super.view.setIsBatched(var4);
  56.       }
  57.    }
  58.  
  59.    boolean editPoint(int var1, int var2, double var3) {
  60.       int var5 = var1 + 1;
  61.       EditableChartable var6 = (EditableChartable)super.view.dataSource;
  62.       return var6.setDataItem(var5, var2, new Double(var3));
  63.    }
  64.  
  65.    void changeValue(int var1, int var2) {
  66.       double var3 = ((Number)super.view.dataSource.getDataItem(var1, var2)).doubleValue();
  67.       if (var1 == 0) {
  68.          super.view.getX()[var2] = var3;
  69.       } else {
  70.          ChartDataViewSeries var5 = super.view.getSeries(var1 - 1);
  71.          var5.getY()[var2] = var3;
  72.       }
  73.    }
  74.  
  75.    void addValue(int var1, int var2) {
  76.       double[] var4;
  77.       if (var1 == 0) {
  78.          var4 = super.view.getX();
  79.       } else {
  80.          ChartDataViewSeries[] var5 = super.view.getSeries();
  81.          var4 = var5[var1 - 1].getY();
  82.       }
  83.  
  84.       double[] var3 = new double[var4.length + 1];
  85.       if (var2 != 0) {
  86.          System.arraycopy(var4, 0, var3, 0, var2);
  87.       }
  88.  
  89.       var3[var2] = ((Number)super.view.dataSource.getDataItem(var1, var2)).doubleValue();
  90.       if (var2 != var3.length - 1) {
  91.          System.arraycopy(var4, var2, var3, var2 + 1, var3.length - var2 - 1);
  92.       }
  93.  
  94.       if (var1 == 0) {
  95.          super.view.setX(var3);
  96.       } else {
  97.          ChartDataViewSeries[] var6 = super.view.getSeries();
  98.          var6[var1 - 1].setY(var3);
  99.       }
  100.    }
  101.  
  102.    void removeValue(int var1, int var2) {
  103.       double[] var4;
  104.       if (var1 == 0) {
  105.          var4 = super.view.getX();
  106.       } else {
  107.          ChartDataViewSeries[] var5 = super.view.getSeries();
  108.          var4 = var5[var1 - 1].getY();
  109.       }
  110.  
  111.       double[] var3 = new double[var4.length - 1];
  112.       System.arraycopy(var4, 0, var3, 0, var2);
  113.       System.arraycopy(var4, var2 + 1, var3, var2, var3.length - var2);
  114.       if (var1 == 0) {
  115.          super.view.setX(var3);
  116.       } else {
  117.          ChartDataViewSeries[] var6 = super.view.getSeries();
  118.          var6[var1 - 1].setY(var3);
  119.       }
  120.    }
  121.  
  122.    void changeRow(int var1, int var2) {
  123.       if (var1 == 0) {
  124.          super.view.setX(super.view.toDoubleArray(super.view.dataSource.getRow(0)));
  125.       } else {
  126.          ChartDataViewSeries[] var3 = super.view.getSeries();
  127.          ChartDataViewSeries var4 = new ChartDataViewSeries((double[])null, super.view.toDoubleArray(super.view.dataSource.getRow(var1)), super.view);
  128.          var4.label = var3[var1 - 1].label;
  129.          var4.name = var3[var1 - 1].name;
  130.          var3[var1 - 1] = var4;
  131.          super.view.setSeries(var3);
  132.       }
  133.    }
  134.  
  135.    void addRow(int var1, int var2) {
  136.       if (var1 != 0) {
  137.          ChartDataViewSeries var3 = new ChartDataViewSeries((double[])null, super.view.toDoubleArray(super.view.dataSource.getRow(var1)), super.view);
  138.          super.view.addSeries(var3);
  139.       }
  140.    }
  141.  
  142.    void removeRow(int var1, int var2) {
  143.       if (var1 != 0) {
  144.          super.view.removeSeries(var1 - 1);
  145.       }
  146.    }
  147.  
  148.    void changeColumn(int var1, int var2) {
  149.       super.changeColumn(var1, var2);
  150.    }
  151.  
  152.    void addColumn(int var1, int var2) {
  153.       super.addColumn(var1, var2);
  154.    }
  155.  
  156.    void removeColumn(int var1, int var2) {
  157.       super.removeColumn(var1, var2);
  158.    }
  159.  
  160.    void changePointLabel(int var1, int var2) {
  161.       super.changePointLabel(var1, var2);
  162.    }
  163.  
  164.    void changeSeriesName(int var1, int var2) {
  165.       if (var1 != 0) {
  166.          ChartDataViewSeries var3 = super.view.getSeries(var1 - 1);
  167.          var3.setName(super.view.dataSource.getSeriesName(var1));
  168.       }
  169.    }
  170.  
  171.    void changeSeriesLabel(int var1, int var2) {
  172.       if (var1 != 0) {
  173.          ChartDataViewSeries var3 = super.view.getSeries(var1 - 1);
  174.          var3.setLabel(super.view.dataSource.getSeriesLabel(var1));
  175.       }
  176.    }
  177.  
  178.    void reset(int var1, int var2) {
  179.       this.loadData(super.view.dataSource);
  180.       String[] var3 = super.view.dataSource.getPointLabels();
  181.       if (var3 != null) {
  182.          super.view.pointLabels.removeAllElements();
  183.  
  184.          for(int var4 = 0; var4 < var3.length; ++var4) {
  185.             super.view.pointLabels.addElement(var3[var4]);
  186.          }
  187.       }
  188.  
  189.       for(int var6 = 0; var6 < super.view.getNumSeries(); ++var6) {
  190.          ChartDataViewSeries var5 = super.view.getSeries(var6);
  191.          var5.name = super.view.dataSource.getSeriesName(var6);
  192.          var5.label = super.view.dataSource.getSeriesLabel(var6);
  193.       }
  194.  
  195.       super.view.name = super.view.dataSource.getName();
  196.    }
  197.  
  198.    Vector getXVector(int var1) {
  199.       return super.view.dataSource.getRow(0);
  200.    }
  201.  
  202.    Vector getYVector(int var1) {
  203.       return super.view.dataSource.getRow(var1 + 1);
  204.    }
  205.  
  206.    double getX(int var1, int var2) {
  207.       Object var3 = super.view.dataSource.getDataItem(0, var2);
  208.  
  209.       try {
  210.          return ((Number)var3).doubleValue();
  211.       } catch (Exception var4) {
  212.          throw new RuntimeException("Chartable returned bad data object");
  213.       }
  214.    }
  215.  
  216.    double getY(int var1, int var2) {
  217.       Object var3 = super.view.dataSource.getDataItem(var1 + 1, var2);
  218.  
  219.       try {
  220.          return ((Number)var3).doubleValue();
  221.       } catch (Exception var4) {
  222.          throw new RuntimeException("Chartable returned bad data object");
  223.       }
  224.    }
  225. }
  226.