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 / table / SetValue.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-12-05  |  2.9 KB  |  200 lines

  1. package jclass.table;
  2.  
  3. import java.util.Vector;
  4. import jclass.util.JCVector;
  5.  
  6. class SetValue {
  7.    static void cell(Table var0, int var1, int var2, Object var3, boolean var4) {
  8.       Object var6 = null;
  9.       boolean var7 = true;
  10.       Object var8 = null;
  11.       int var11 = 0;
  12.       int var12 = var0.rows - 1;
  13.       int var13 = 0;
  14.       int var14 = var0.columns - 1;
  15.       if (var1 == -997) {
  16.          var1 = -998;
  17.       }
  18.  
  19.       if (var2 == -997) {
  20.          var2 = -998;
  21.       }
  22.  
  23.       if (var1 == -998) {
  24.          if (var2 != -998) {
  25.             var14 = var2;
  26.             var13 = var2;
  27.          }
  28.  
  29.          var11 = 0;
  30.          var12 = var0.rows - 1;
  31.       }
  32.  
  33.       if (var2 == -998) {
  34.          if (var1 != -998) {
  35.             var12 = var1;
  36.             var11 = var1;
  37.          }
  38.  
  39.          var13 = 0;
  40.          var14 = var0.columns - 1;
  41.       }
  42.  
  43.       if (var1 != -998 && var2 != -998) {
  44.          var12 = var1;
  45.          var11 = var1;
  46.          var14 = var2;
  47.          var13 = var2;
  48.       }
  49.  
  50.       if (var11 >= 0 && var13 >= 0) {
  51.          JCTable var15 = var0.isJCTable ? (JCTable)var0 : null;
  52.          var4 = var0.isJCTable && var4 && (var15.validate_policy & 2) != 0;
  53.          boolean var16 = var0.cellValueListeners.size() > 0;
  54.          if (var0.in_get_cell || !var16) {
  55.             var6 = var3;
  56.             if (var4) {
  57.                var8 = var3;
  58.             }
  59.          }
  60.  
  61.          for(int var9 = var11; var9 <= var12; ++var9) {
  62.             int var10;
  63.             for(var10 = var13; var10 <= var14; ++var10) {
  64.                if (!var0.in_get_cell && var16) {
  65.                   if (!var0.repaint) {
  66.                      var0.needs_repaint = true;
  67.                   }
  68.                } else {
  69.                   Object var5 = var0.cellValue(var9, var10);
  70.                   var7 = var6 != null ? !var6.equals(var5) : var5 != null;
  71.                   if (var4) {
  72.                      JCValidateCellEvent var17 = new JCValidateCellEvent(var0);
  73.                      if (!Validate.value((JCTable)var0, var17, var9, var10, var7, var8)) {
  74.                         continue;
  75.                      }
  76.  
  77.                      var6 = var17.value;
  78.                   }
  79.  
  80.                   if (var7) {
  81.                      if (var5 != null && var0.cellExists(var9, var10)) {
  82.                         ((JCVector)var0.cells.elementAt(var9)).setElementAt(var10, (Object)null);
  83.                      }
  84.  
  85.                      if (var6 == null) {
  86.                         if (!var0.repaint) {
  87.                            var0.needs_repaint = true;
  88.                         }
  89.                      } else {
  90.                         var0.cells.setMinSize(var9 + 1);
  91.                         if (var0.cells.elementAt(var9) == null) {
  92.                            var0.cells.setElementAt(var9, new JCVector(var10 + 1));
  93.                         }
  94.  
  95.                         ((JCVector)var0.cells.elementAt(var9)).setElementAt(var10, var6);
  96.                         if (!var0.repaint) {
  97.                            var0.needs_repaint = true;
  98.                         }
  99.                      }
  100.                   }
  101.                }
  102.             }
  103.  
  104.             if (var6 == null && var0.cellExists(var9, var10) && var14 == var0.cells.size() - 1) {
  105.                ((JCVector)var0.cells.elementAt(var9)).strip();
  106.                var0.cells.strip();
  107.             }
  108.          }
  109.  
  110.          if (var0.isJCTable && var15.hasText() && var0.repaint && var15.edit_row == var1 && var15.edit_column == var2) {
  111.             Text.setValues(var15.text, var1, var2);
  112.          }
  113.  
  114.       }
  115.    }
  116.  
  117.    static void label(Table var0, JCVector var1, int var2, Object var3) {
  118.       if (var2 >= 0) {
  119.          boolean var4 = var0.labelValueListeners.size() > 0;
  120.          if (!var0.in_get_label && var4) {
  121.             if (!var0.repaint) {
  122.                var0.needs_repaint = true;
  123.             } else {
  124.                if (var0.isVisible(var1, var2)) {
  125.                   drawLabel(var0, var1, var2);
  126.                }
  127.  
  128.             }
  129.          } else {
  130.             if (var2 < ((Vector)var1).size()) {
  131.                Object var5 = ((Vector)var1).elementAt(var2);
  132.                if (var5 != null && var3 != null && var5.equals(var3)) {
  133.                   return;
  134.                }
  135.             }
  136.  
  137.             var1.setElementAt(var2, var3);
  138.             if (var3 == null && var2 == ((Vector)var1).size() - 1) {
  139.                var1.strip();
  140.             }
  141.  
  142.             if (!var0.repaint) {
  143.                var0.needs_repaint = true;
  144.             } else {
  145.                if (var0.isVisible(var1, var2) && !var0.in_get_label) {
  146.                   drawLabel(var0, var1, var2);
  147.                }
  148.  
  149.             }
  150.          }
  151.       }
  152.    }
  153.  
  154.    static void label(Table var0, int var1, int var2, Object var3) {
  155.       label27: {
  156.          boolean var10000;
  157.          if (var1 == -1) {
  158.             if (var2 >= 0) {
  159.                break label27;
  160.             }
  161.  
  162.             var10000 = false;
  163.          } else {
  164.             if (var2 != -1) {
  165.                return;
  166.             }
  167.  
  168.             if (var1 >= 0) {
  169.                break label27;
  170.             }
  171.  
  172.             var10000 = false;
  173.          }
  174.  
  175.          if (!var10000) {
  176.             return;
  177.          }
  178.       }
  179.  
  180.       if (var1 == -1) {
  181.          label(var0, var0.column_labels, var2, var3);
  182.       } else {
  183.          label(var0, var0.row_labels, var1, var3);
  184.       }
  185.    }
  186.  
  187.    private static void drawLabel(Table var0, JCVector var1, int var2) {
  188.       JCCellRange var3 = new JCCellRange();
  189.       if (var1 == var0.row_labels) {
  190.          if (var0.isRowVisible(var2)) {
  191.             var0.paint(var3.reshape(var2, -1));
  192.             return;
  193.          }
  194.       } else if (var0.isColumnVisible(var2)) {
  195.          var0.paint(var3.reshape(-1, var2));
  196.       }
  197.  
  198.    }
  199. }
  200.