home *** CD-ROM | disk | FTP | other *** search
/ Internet Magazine 2002 June / INTERNET92.ISO / pc / software / windows / building / visual_dhtml / visualdhtmlwin9x_nt.exe / OCimlp.___ (.txt) < prev    next >
Encoding:
Java Class File  |  2001-10-19  |  11.1 KB  |  628 lines

  1. import java.awt.Button;
  2. import java.awt.Color;
  3. import java.awt.Component;
  4. import java.awt.Container;
  5. import java.awt.Dimension;
  6. import java.awt.Event;
  7. import java.awt.Font;
  8. import java.awt.FontMetrics;
  9. import java.awt.Graphics;
  10. import java.awt.Image;
  11. import java.awt.LayoutManager;
  12. import java.awt.Panel;
  13.  
  14. public class OCimlp extends Panel {
  15.    int design_id = 0;
  16.    // $FF: renamed from: d java.awt.Dimension
  17.    Dimension field_0 = new Dimension(0, 0);
  18.    // $FF: renamed from: fm java.awt.FontMetrics
  19.    FontMetrics field_1;
  20.    Font font = new Font("Helvetica", 0, 10);
  21.    boolean mlevel = false;
  22.    boolean ready_resize = false;
  23.    boolean paint_called;
  24.    boolean first_run;
  25.    Color bgColor;
  26.    OCAgrid defgrid;
  27.    OCAgrid branchgrid;
  28.    ACRecd specmlnav;
  29.    ACRlev levnav;
  30.    int dgx;
  31.    int dgy;
  32.    int dgw;
  33.    int dgh;
  34.    int bgx;
  35.    int bgy;
  36.    int bgw;
  37.    int bgh;
  38.    int snx;
  39.    int sny;
  40.    int snw;
  41.    int snh;
  42.    int lnx;
  43.    int lny;
  44.    int lnw;
  45.    int lnh;
  46.    // $FF: renamed from: vx int
  47.    int field_2;
  48.    // $FF: renamed from: vy int
  49.    int field_3;
  50.    // $FF: renamed from: vw int
  51.    int field_4;
  52.    // $FF: renamed from: vh int
  53.    int field_5;
  54.    int grid_id;
  55.    SLMdlg mliface;
  56.    OCmsl dgrid_id0;
  57.    OCmltext dgrid_id1;
  58.    OCmsltree dgrid_id2;
  59.    Button b_levset;
  60.  
  61.    public boolean mouseEnter(Event var1, int var2, int var3) {
  62.       return true;
  63.    }
  64.  
  65.    public void figureDesign() {
  66.       this.field_2 = this.field_0.width / 2 + 4;
  67.       this.field_3 = 20;
  68.       this.field_4 = this.field_0.width / 2 - 5;
  69.       this.field_5 = this.field_0.height - 25 - this.field_3;
  70.       if (this.design_id == 100) {
  71.          this.dgrid_id0.reshape(this.field_2, this.field_3, this.field_4, this.field_5);
  72.       } else if (this.design_id == 101) {
  73.          this.dgrid_id1.reshape(this.field_2, this.field_3, this.field_4, this.field_5);
  74.       } else {
  75.          if (this.design_id == 102) {
  76.             this.dgrid_id2.reshape(this.field_2, this.field_3, this.field_4, this.field_5);
  77.          }
  78.  
  79.       }
  80.    }
  81.  
  82.    public void addBranchGrid(OCAgrid var1) {
  83.       if (this.mliface.appinfo.branch_level) {
  84.          this.branchgrid = var1;
  85.          this.figureBranchGrid();
  86.          ((Container)this).add(this.branchgrid);
  87.       }
  88.  
  89.    }
  90.  
  91.    public void goToNewSpecRecord() {
  92.       this.mliface.appinfo.goToFirstSpecMLParamOrNew();
  93.       this.mliface.loadSpecMLFields();
  94.       this.mliface.loadBranchFields();
  95.       this.updateDesign();
  96.       this.specmlnav.setRecInfo(this.mliface.appinfo.cur_tree_index + 1, this.mliface.appinfo.max_tree_index + 1);
  97.       if (this.mlevel) {
  98.          this.levnav.setRecInfo(this.mliface.appinfo.cur_tree_level, this.mliface.appinfo.max_tree_level);
  99.       }
  100.  
  101.       this.updateDesignPointer(this.mliface.appinfo.cur_tree_index);
  102.    }
  103.  
  104.    public void figureMLGridMulti() {
  105.       this.dgx = 2;
  106.       this.dgy = 20;
  107.       this.dgw = this.field_0.width / 2 - 4;
  108.       if (this.mliface.appinfo.branch_level) {
  109.          this.dgh = (int)((double)(this.field_0.height - 18) * 0.6) - 35;
  110.       } else {
  111.          this.dgh = this.field_0.height - 25 - this.dgy;
  112.       }
  113.  
  114.       this.defgrid.reshape(this.dgx, this.dgy, this.dgw, this.dgh);
  115.    }
  116.  
  117.    public void goToNewFromDesignGrid(String[] var1) {
  118.       ((Component)this).requestFocus();
  119.       this.mliface.updateParams();
  120.       this.mliface.updateBranchParams();
  121.       this.mliface.appinfo.goToSpecMLLevel(Integer.parseInt(var1[0]), var1[1], -1);
  122.       this.mliface.loadSpecMLFields();
  123.       this.mliface.loadBranchFields();
  124.       this.updateDesign();
  125.       this.specmlnav.setRecInfo(this.mliface.appinfo.cur_tree_index + 1, this.mliface.appinfo.max_tree_index + 1);
  126.       this.levnav.setRecInfo(this.mliface.appinfo.cur_tree_level, this.mliface.appinfo.max_tree_level);
  127.       this.updateDesignPointer(this.mliface.appinfo.cur_tree_index);
  128.    }
  129.  
  130.    public void addSpecNav(ACRecd var1) {
  131.       this.specmlnav = var1;
  132.       this.figureSpecNav();
  133.       ((Container)this).add(this.specmlnav);
  134.    }
  135.  
  136.    public void addLevNav(ACRlev var1) {
  137.       this.levnav = var1;
  138.       this.figureLevNav();
  139.       ((Container)this).add(this.levnav);
  140.    }
  141.  
  142.    public void goToNewSpecificFromDesignGrid(int var1, String var2, int var3) {
  143.       ((Component)this).requestFocus();
  144.       this.mliface.updateParams();
  145.       this.mliface.updateBranchParams();
  146.       this.mliface.appinfo.goToSpecMLLevel(var1, var2, var3);
  147.       this.mliface.loadSpecMLFields();
  148.       this.mliface.loadBranchFields();
  149.       this.updateDesign();
  150.       this.specmlnav.setRecInfo(this.mliface.appinfo.cur_tree_index + 1, this.mliface.appinfo.max_tree_index + 1);
  151.       this.levnav.setRecInfo(this.mliface.appinfo.cur_tree_level, this.mliface.appinfo.max_tree_level);
  152.       this.updateDesignPointer(this.mliface.appinfo.cur_tree_index);
  153.    }
  154.  
  155.    public void updateMLDesign() {
  156.       if (this.design_id == 100) {
  157.          this.dgrid_id0.addDefaults(this.mliface.appinfo.getDefParamDescs(), this.mliface.appinfo.getDefValues());
  158.          this.dgrid_id0.addSpecifics(this.mliface.appinfo.getSpecMLParamDescs(), this.mliface.appinfo.getSpecMLValues().valuesAtLevel(this.mliface.appinfo.convertTree()));
  159.          this.dgrid_id0.setAppDimensions(1, 1);
  160.       } else if (this.design_id == 101) {
  161.          this.dgrid_id1.addDefaults(this.mliface.appinfo.getDefParamDescs(), this.mliface.appinfo.getDefValues());
  162.          this.dgrid_id1.addSpecifics(this.mliface.appinfo.getSpecMLParamDescs(), this.mliface.appinfo.getSpecMLValues().valuesAtLevel(this.mliface.appinfo.convertTree()));
  163.          this.dgrid_id1.setAppDimensions(new Integer(this.mliface.appinfo.getDefValues()[0]), new Integer(this.mliface.appinfo.getDefValues()[1]));
  164.       } else {
  165.          if (this.design_id == 102) {
  166.             this.dgrid_id2.addDefaults(this.mliface.appinfo.getDefParamDescs(), this.mliface.appinfo.getDefValues());
  167.             this.dgrid_id2.addSpecifics(this.mliface.appinfo.getSpecMLParamDescs(), this.mliface.appinfo.getSpecMLValues().valuesAtLevel(this.mliface.appinfo.convertTree()));
  168.             this.dgrid_id2.setAppDimensions(new Integer(this.mliface.appinfo.getDefValues()[0]), new Integer(this.mliface.appinfo.getDefValues()[1]));
  169.          }
  170.  
  171.       }
  172.    }
  173.  
  174.    public void updateDesignPointer(int var1) {
  175.       if (this.design_id == 100) {
  176.          this.dgrid_id0.setPointer(var1);
  177.       } else {
  178.          if (this.design_id == 102) {
  179.             this.dgrid_id2.setPointer(var1);
  180.          }
  181.  
  182.       }
  183.    }
  184.  
  185.    public void figureSpecNav() {
  186.       this.snx = 0;
  187.       this.sny = this.field_0.height - 20;
  188.       this.snw = this.field_0.width / 2 + 20;
  189.       this.snh = 18;
  190.       this.specmlnav.reshape(this.snx, this.sny, this.snw, this.snh);
  191.    }
  192.  
  193.    public void figureLevNav() {
  194.       this.lnx = this.field_0.width - 97;
  195.       this.lny = this.field_0.height - 20;
  196.       this.lnw = 95;
  197.       this.lnh = 18;
  198.       this.levnav.reshape(this.lnx, this.lny, this.lnw, this.lnh);
  199.    }
  200.  
  201.    public void reshape(int var1, int var2, int var3, int var4) {
  202.       if (var3 * var4 > 0) {
  203.          this.field_0 = new Dimension(var3, var4);
  204.          this.reFigureAll();
  205.          super.reshape(var1, var2, var3, var4);
  206.       }
  207.    }
  208.  
  209.    public void figureLevButton() {
  210.       this.b_levset.reshape(this.field_0.width / 2 + 5, this.field_0.height - 19, 80, 17);
  211.    }
  212.  
  213.    public void addMLGridMulti(OCAgrid var1) {
  214.       this.defgrid = var1;
  215.       this.figureMLGridMulti();
  216.       ((Container)this).add(this.defgrid);
  217.    }
  218.  
  219.    public boolean mouseExit(Event var1, int var2, int var3) {
  220.       return true;
  221.    }
  222.  
  223.    private void reDoGrid() {
  224.       this.first_run = true;
  225.       this.paintIt();
  226.    }
  227.  
  228.    OCimlp(SLMdlg var1, boolean var2) {
  229.       this.bgColor = ACutilb.windowColor;
  230.       this.grid_id = -1;
  231.       this.mliface = var1;
  232.       this.mlevel = var2;
  233.       ((Container)this).setLayout((LayoutManager)null);
  234.       ((Component)this).setBackground(this.bgColor);
  235.    }
  236.  
  237.    public void paint(Graphics var1) {
  238.       this.paint_called = true;
  239.       this.paintIt();
  240.    }
  241.  
  242.    private synchronized void paintIt() {
  243.       if (this.paint_called) {
  244.          int var1 = 0;
  245.          int var2 = 0;
  246.          Graphics var3 = ((Component)this).getGraphics();
  247.          var3.setFont(this.font);
  248.          this.field_1 = ((Component)this).getFontMetrics(this.font);
  249.          if (this.first_run) {
  250.             this.first_run = false;
  251.          }
  252.  
  253.          var3.setColor(Color.black);
  254.          var3.drawRect(this.field_2 - 1, this.field_3 - 1, this.field_4 + 1, this.field_5 + 1);
  255.          var3.drawRect(this.dgx - 1, this.dgy - 1, this.dgw + 1, this.dgh + 1);
  256.          if (this.mliface.appinfo.branch_level) {
  257.             var1 = this.field_1.stringWidth("Menu Properties");
  258.             var2 = this.bgx;
  259.             var3.drawString("Menu Properties", var2 + 7, this.bgy - this.field_1.getDescent() - 2);
  260.          }
  261.  
  262.          var1 = this.field_1.stringWidth("Message Properties");
  263.          var2 = this.dgx - 1;
  264.          var3.drawString("Message Properties", var2 + 8, this.dgy - this.field_1.getDescent() - 2);
  265.          var1 = this.field_1.stringWidth("Menu Text Preview / Navigation");
  266.          var2 = this.field_2 - 1;
  267.          var3.drawString("Menu Text Preview / Navigation", var2 + 8, this.field_3 - this.field_1.getDescent() - 2);
  268.          ACutil var5 = new ACutil();
  269.          Image var4;
  270.          if ((var4 = var5.getImage("acimg/gold_arrow.gif")) != null) {
  271.             var3.drawImage(var4, this.dgx, this.dgy - 12, this);
  272.             var3.drawImage(var4, this.field_2, this.field_3 - 12, this);
  273.             if (this.mliface.appinfo.branch_level) {
  274.                var3.drawImage(var4, this.bgx, this.bgy - 12, this);
  275.             }
  276.          } else {
  277.             var3.setColor(new Color(0, 102, 51));
  278.             var3.fillRect(this.dgx - 1, this.dgy - 12, 7, 7);
  279.             var3.fillRect(this.field_2 - 1, this.field_3 - 12, 7, 7);
  280.             if (this.mliface.appinfo.branch_level) {
  281.                var3.fillRect(this.bgx - 1, this.bgy - 12, 7, 7);
  282.             }
  283.          }
  284.  
  285.          var3.setColor(Color.gray);
  286.          var3.drawRect(this.field_2 - 2, this.field_3 - 2, this.field_4 + 3, this.field_5 + 3);
  287.          var3.drawRect(this.dgx - 2, this.dgy - 2, this.dgw + 2, this.dgh + 2);
  288.          var3.setColor(ACutilb.windowColor);
  289.          var3.drawLine(this.field_2, this.field_3 + this.field_5, this.field_2 + this.field_4, this.field_3 + this.field_5);
  290.          var3.drawLine(this.field_2 + this.field_4, this.field_3, this.field_2 + this.field_4, this.field_3 + this.field_5);
  291.          var3.drawLine(this.dgx, this.dgy + this.dgh, this.dgx + this.dgw, this.dgy + this.dgh);
  292.          var3.drawLine(this.dgx + this.dgw, this.dgy, this.dgx + this.dgw, this.dgy + this.dgh);
  293.          var3.setColor(Color.white);
  294.          var3.drawLine(this.field_2 - 1, this.field_3 + this.field_5 + 1, this.field_2 + this.field_4 + 1, this.field_3 + this.field_5 + 1);
  295.          var3.drawLine(this.field_2 + this.field_4 + 1, this.field_3 - 1, this.field_2 + this.field_4 + 1, this.field_3 + this.field_5 + 1);
  296.          var3.drawLine(this.dgx - 1, this.dgy + this.dgh + 1, this.dgx + this.dgw + 1, this.dgy + this.dgh + 1);
  297.          var3.drawLine(this.dgx + this.dgw + 1, this.dgy - 1, this.dgx + this.dgw + 1, this.dgy + this.dgh + 1);
  298.          if (this.mliface.appinfo.branch_level) {
  299.             var3.setColor(Color.black);
  300.             var3.drawRect(this.bgx - 1, this.bgy - 1, this.bgw + 1, this.bgh + 1);
  301.             var3.setColor(Color.gray);
  302.             var3.drawRect(this.bgx - 2, this.bgy - 2, this.bgw + 2, this.bgh + 2);
  303.             var3.setColor(ACutilb.windowColor);
  304.             var3.drawLine(this.bgx, this.bgy + this.bgh, this.bgx + this.bgw, this.bgy + this.bgh);
  305.             var3.drawLine(this.bgx + this.bgw, this.bgy, this.bgx + this.bgw, this.bgy + this.bgh);
  306.             var3.setColor(Color.white);
  307.             var3.drawLine(this.bgx - 1, this.bgy + this.bgh + 1, this.bgx + this.bgw + 1, this.bgy + this.bgh + 1);
  308.             var3.drawLine(this.bgx + this.bgw + 1, this.bgy - 1, this.bgx + this.bgw + 1, this.bgy + this.bgh + 1);
  309.          }
  310.  
  311.       }
  312.    }
  313.  
  314.    public void resize(Dimension var1) {
  315.       if (var1.width * var1.height > 0) {
  316.          this.reFigureAll();
  317.          super.resize(var1);
  318.       }
  319.    }
  320.  
  321.    public void resize(int var1, int var2) {
  322.       if (var1 * var2 > 0) {
  323.          this.field_0 = new Dimension(var1, var2);
  324.          this.reFigureAll();
  325.          super.resize(var1, var2);
  326.       }
  327.    }
  328.  
  329.    public void addDesign(int var1) {
  330.       this.design_id = var1;
  331.       if (this.design_id == 100) {
  332.          this.dgrid_id0 = new OCmsl(this.mliface.appinfo);
  333.          this.dgrid_id0.bgColor = new Color(255, 255, 255);
  334.          this.dgrid_id0.setBackground(this.dgrid_id0.bgColor);
  335.          this.figureDesign();
  336.          ((Container)this).add(this.dgrid_id0);
  337.       } else if (this.design_id == 101) {
  338.          this.dgrid_id1 = new OCmltext();
  339.          this.figureDesign();
  340.          ((Container)this).add(this.dgrid_id1);
  341.       } else if (this.design_id == 102) {
  342.          this.dgrid_id2 = new OCmsltree(this.mliface.appinfo);
  343.          this.figureDesign();
  344.          ((Container)this).add(this.dgrid_id2);
  345.       }
  346.  
  347.       this.updateDesign();
  348.    }
  349.  
  350.    public void updateDesign() {
  351.       if (this.mlevel) {
  352.          this.updateMLDesign();
  353.       } else if (this.design_id == 100) {
  354.          this.dgrid_id0.addDefaults(this.mliface.appinfo.getDefParamDescs(), this.mliface.appinfo.getDefValues());
  355.          this.dgrid_id0.addSpecifics(this.mliface.appinfo.getSpecMLParamDescs(), this.mliface.appinfo.getSpecMLValues().valuesAtLevel(this.mliface.appinfo.convertTree()));
  356.          this.dgrid_id0.setAppDimensions(new Integer(this.mliface.appinfo.getDefValues()[0]), new Integer(this.mliface.appinfo.getDefValues()[1]));
  357.       } else if (this.design_id == 101) {
  358.          this.dgrid_id1.addDefaults(this.mliface.appinfo.getDefParamDescs(), this.mliface.appinfo.getDefValues());
  359.          this.dgrid_id1.addSpecifics(this.mliface.appinfo.getSpecMLParamDescs(), this.mliface.appinfo.getSpecMLValues().valuesAtLevel(this.mliface.appinfo.convertTree()));
  360.          this.dgrid_id1.setAppDimensions(new Integer(this.mliface.appinfo.getDefValues()[0]), new Integer(this.mliface.appinfo.getDefValues()[1]));
  361.       } else {
  362.          if (this.design_id == 102) {
  363.             this.dgrid_id2.addDefaults(this.mliface.appinfo.getDefParamDescs(), this.mliface.appinfo.getDefValues());
  364.             this.dgrid_id2.addSpecifics(this.mliface.appinfo.getSpecMLParamDescs(), this.mliface.appinfo.getSpecMLValues().valuesAtLevel(this.mliface.appinfo.convertTree()));
  365.             this.dgrid_id2.setAppDimensions(new Integer(this.mliface.appinfo.getDefValues()[0]), new Integer(this.mliface.appinfo.getDefValues()[1]));
  366.          }
  367.  
  368.       }
  369.    }
  370.  
  371.    public void reFigureAll() {
  372.       if (!this.first_run && this.ready_resize) {
  373.          if (this.mlevel) {
  374.             this.figureMLGridMulti();
  375.             this.figureBranchGrid();
  376.             this.figureSpecNav();
  377.             this.figureDesign();
  378.             this.figureLevNav();
  379.          } else {
  380.             this.figureMLGridMulti();
  381.             this.figureSpecNav();
  382.             this.figureDesign();
  383.          }
  384.       }
  385.  
  386.       this.first_run = false;
  387.    }
  388.  
  389.    public void addLevButton() {
  390.       this.b_levset = new Button("Level Properties");
  391.       this.b_levset.setFont(this.font);
  392.       ((Container)this).add(this.b_levset);
  393.    }
  394.  
  395.    public boolean mouseDown(Event var1, int var2, int var3) {
  396.       return true;
  397.    }
  398.  
  399.    public Dimension getMinimumSize() {
  400.       return new Dimension(50, 50);
  401.    }
  402.  
  403.    public Dimension getPreferredSize() {
  404.       return new Dimension(50, 50);
  405.    }
  406.  
  407.    public boolean handleEvent(Event var1) {
  408.       if (var1.id == 951) {
  409.          int var16 = Integer.parseInt((String)var1.arg);
  410.          int var6 = 0;
  411.          if (var16 != 0) {
  412.             if (var16 == 1) {
  413.                this.mliface.updateParams();
  414.                var6 = this.mliface.appinfo.insertSpecMLParam();
  415.                this.mliface.loadSpecMLFields();
  416.                this.updateDesign();
  417.                this.specmlnav.setRecInfo(var6 + 1, this.mliface.appinfo.max_tree_index + 1);
  418.                this.updateDesignPointer(var6);
  419.                ACutila.iface.ipan.updateDesignOnly(true);
  420.                return true;
  421.             } else if (var16 == 2) {
  422.                this.mliface.updateParams();
  423.                var6 = this.mliface.appinfo.goToNewSpecMLParam();
  424.                this.mliface.loadSpecMLFields();
  425.                this.updateDesign();
  426.                this.specmlnav.setRecInfo(var6 + 1, this.mliface.appinfo.max_tree_index + 1);
  427.                this.updateDesignPointer(var6);
  428.                ACutila.iface.ipan.updateDesignOnly(true);
  429.                return true;
  430.             } else if (var16 == 3) {
  431.                this.mliface.updateParams();
  432.                var6 = this.mliface.appinfo.goToFirstSpecMLParam();
  433.                this.mliface.loadSpecMLFields();
  434.                this.specmlnav.setRecInfo(var6 + 1, this.mliface.appinfo.max_tree_index + 1);
  435.                this.updateDesignPointer(var6);
  436.                return true;
  437.             } else if (var16 == 4) {
  438.                this.mliface.updateParams();
  439.                var6 = this.mliface.appinfo.goToPrevSpecMLParam();
  440.                this.mliface.loadSpecMLFields();
  441.                this.specmlnav.setRecInfo(var6 + 1, this.mliface.appinfo.max_tree_index + 1);
  442.                this.updateDesignPointer(var6);
  443.                return true;
  444.             } else if (var16 == 5) {
  445.                this.mliface.updateParams();
  446.                var6 = this.mliface.appinfo.goToNextSpecMLParam();
  447.                this.mliface.loadSpecMLFields();
  448.                this.specmlnav.setRecInfo(var6 + 1, this.mliface.appinfo.max_tree_index + 1);
  449.                this.updateDesignPointer(var6);
  450.                return true;
  451.             } else if (var16 == 6) {
  452.                this.mliface.updateParams();
  453.                var6 = this.mliface.appinfo.goToLastSpecMLParam();
  454.                this.mliface.loadSpecMLFields();
  455.                this.specmlnav.setRecInfo(var6 + 1, this.mliface.appinfo.max_tree_index + 1);
  456.                this.updateDesignPointer(var6);
  457.                return true;
  458.             } else {
  459.                return true;
  460.             }
  461.          } else {
  462.             if (this.mlevel) {
  463.                if (this.mliface.appinfo.max_tree_index < 1 && this.mliface.appinfo.cur_tree_level < 2) {
  464.                   this.mliface.appinfo.deleteSpecMLParam();
  465.                   this.mliface.killWindow("False");
  466.                } else {
  467.                   if (this.mliface.appinfo.max_tree_index <= 0 && this.mliface.appinfo.cur_tree_level > 1) {
  468.                      this.mliface.updateBranchParams();
  469.                      var6 = this.mliface.appinfo.deleteSpecMLParam();
  470.                      this.mliface.loadSpecMLFields();
  471.                      this.mliface.loadBranchFields();
  472.                   } else {
  473.                      var6 = this.mliface.appinfo.deleteSpecMLParam();
  474.                   }
  475.  
  476.                   this.mliface.loadSpecMLFields();
  477.                   this.updateDesign();
  478.                   this.specmlnav.setRecInfo(var6 + 1, this.mliface.appinfo.max_tree_index + 1);
  479.                   this.levnav.setRecInfo(this.mliface.appinfo.cur_tree_level, this.mliface.appinfo.max_tree_level);
  480.                   this.updateDesignPointer(var6);
  481.                }
  482.             } else if (this.mliface.appinfo.max_tree_index < 1) {
  483.                this.mliface.appinfo.deleteSpecMLParam();
  484.                this.mliface.killWindow("False");
  485.             } else {
  486.                var6 = this.mliface.appinfo.deleteSpecMLParam();
  487.                this.mliface.loadSpecMLFields();
  488.                this.updateDesign();
  489.                this.specmlnav.setRecInfo(var6 + 1, this.mliface.appinfo.max_tree_index + 1);
  490.                this.updateDesignPointer(var6);
  491.             }
  492.  
  493.             ACutila.iface.ipan.updateDesignOnly(true);
  494.             return true;
  495.          }
  496.       } else if (var1.id == 952) {
  497.          int var15 = Integer.parseInt((String)var1.arg);
  498.          if (var15 == 0) {
  499.             if (this.mliface.appinfo.cur_tree_level > 1) {
  500.                this.mliface.updateParams();
  501.                this.mliface.updateBranchParams();
  502.                this.mliface.appinfo.goToPrevSpecMLLevel();
  503.                this.mliface.appinfo.goToBranch();
  504.                this.mliface.appinfo.checkLevel();
  505.                this.mliface.loadSpecMLFields();
  506.                this.mliface.loadBranchFields();
  507.                this.updateDesign();
  508.                this.specmlnav.setRecInfo(this.mliface.appinfo.cur_tree_index + 1, this.mliface.appinfo.max_tree_index + 1);
  509.                this.levnav.setRecInfo(this.mliface.appinfo.cur_tree_level, this.mliface.appinfo.max_tree_level);
  510.                this.updateDesignPointer(this.mliface.appinfo.cur_tree_index);
  511.                ACutila.iface.ipan.updateDesignOnly(true);
  512.             }
  513.  
  514.             return true;
  515.          } else if (var15 == 1) {
  516.             this.mliface.updateParams();
  517.             this.mliface.updateBranchParams();
  518.             this.mliface.appinfo.goToNextSpecMLLevel();
  519.             this.mliface.appinfo.goToBranch();
  520.             this.mliface.appinfo.checkLevel();
  521.             this.mliface.loadSpecMLFields();
  522.             this.mliface.loadBranchFields();
  523.             this.updateDesign();
  524.             this.specmlnav.setRecInfo(this.mliface.appinfo.cur_tree_index + 1, this.mliface.appinfo.max_tree_index + 1);
  525.             this.levnav.setRecInfo(this.mliface.appinfo.cur_tree_level, this.mliface.appinfo.max_tree_level);
  526.             this.updateDesignPointer(this.mliface.appinfo.cur_tree_index);
  527.             ACutila.iface.ipan.updateDesignOnly(true);
  528.             return true;
  529.          } else {
  530.             return true;
  531.          }
  532.       } else if (var1.id == 9202) {
  533.          this.mliface.updateParams();
  534.          int var5 = this.mliface.appinfo.goToSpecMLParam(new Integer(var1.arg.toString()));
  535.          this.mliface.loadSpecMLFields();
  536.          this.specmlnav.setRecInfo(var5 + 1, this.mliface.appinfo.max_tree_index + 1);
  537.          this.updateDesignPointer(var5);
  538.          return true;
  539.       } else {
  540.          if (var1.id == 1001) {
  541.             String var3 = (String)var1.arg;
  542.             if (var3.equals("Edit Text")) {
  543.                this.mliface.specmlgrid.activateButton(0, 0);
  544.                return true;
  545.             }
  546.  
  547.             if (var3.equals("Level - Up")) {
  548.                this.mliface.updateParams();
  549.                this.mliface.updateBranchParams();
  550.                this.mliface.appinfo.goToNextSpecMLLevel();
  551.                this.mliface.appinfo.goToBranch();
  552.                this.mliface.appinfo.checkLevel();
  553.                this.mliface.loadSpecMLFields();
  554.                this.mliface.loadBranchFields();
  555.                this.updateDesign();
  556.                this.specmlnav.setRecInfo(this.mliface.appinfo.cur_tree_index + 1, this.mliface.appinfo.max_tree_index + 1);
  557.                this.levnav.setRecInfo(this.mliface.appinfo.cur_tree_level, this.mliface.appinfo.max_tree_level);
  558.                this.updateDesignPointer(this.mliface.appinfo.cur_tree_index);
  559.                ACutila.iface.ipan.updateDesignOnly(true);
  560.                return true;
  561.             }
  562.  
  563.             if (var3.equals("Level - Down")) {
  564.                if (this.mliface.appinfo.cur_tree_level > 1) {
  565.                   this.mliface.updateParams();
  566.                   this.mliface.updateBranchParams();
  567.                   this.mliface.appinfo.goToPrevSpecMLLevel();
  568.                   this.mliface.appinfo.goToBranch();
  569.                   this.mliface.appinfo.checkLevel();
  570.                   this.mliface.loadSpecMLFields();
  571.                   this.mliface.loadBranchFields();
  572.                   this.updateDesign();
  573.                   this.specmlnav.setRecInfo(this.mliface.appinfo.cur_tree_index + 1, this.mliface.appinfo.max_tree_index + 1);
  574.                   this.levnav.setRecInfo(this.mliface.appinfo.cur_tree_level, this.mliface.appinfo.max_tree_level);
  575.                   this.updateDesignPointer(this.mliface.appinfo.cur_tree_index);
  576.                   ACutila.iface.ipan.updateDesignOnly(true);
  577.                }
  578.  
  579.                return true;
  580.             }
  581.  
  582.             if (var3.equals("Add Item")) {
  583.                this.mliface.updateParams();
  584.                int var4 = this.mliface.appinfo.goToNewSpecMLParam();
  585.                this.mliface.loadSpecMLFields();
  586.                this.updateDesign();
  587.                this.specmlnav.setRecInfo(var4 + 1, this.mliface.appinfo.max_tree_index + 1);
  588.                this.updateDesignPointer(var4);
  589.                ACutila.iface.ipan.updateDesignOnly(true);
  590.                return true;
  591.             }
  592.  
  593.             if (var3.equals("Insert Item")) {
  594.                this.mliface.updateParams();
  595.                int var2 = this.mliface.appinfo.insertSpecMLParam();
  596.                this.mliface.loadSpecMLFields();
  597.                this.updateDesign();
  598.                this.specmlnav.setRecInfo(var2 + 1, this.mliface.appinfo.max_tree_index + 1);
  599.                this.updateDesignPointer(var2);
  600.                ACutila.iface.ipan.updateDesignOnly(true);
  601.                return true;
  602.             }
  603.          }
  604.  
  605.          return super.handleEvent(var1);
  606.       }
  607.    }
  608.  
  609.    public void figureBranchGrid() {
  610.       if (this.mliface.appinfo.branch_level) {
  611.          this.bgx = 2;
  612.          this.bgy = this.dgy + this.dgh + 20;
  613.          this.bgw = this.field_0.width / 2 - 4;
  614.          this.bgh = this.field_0.height - 25 - this.bgy;
  615.          this.branchgrid.reshape(this.bgx, this.bgy, this.bgw, this.bgh);
  616.       } else {
  617.          this.bgx = 2;
  618.          this.bgy = this.dgy + this.dgh;
  619.          this.bgw = this.field_0.width / 2 - 4;
  620.          this.bgh = 0;
  621.       }
  622.    }
  623.  
  624.    public boolean mouseDrag(Event var1, int var2, int var3) {
  625.       return true;
  626.    }
  627. }
  628.