home *** CD-ROM | disk | FTP | other *** search
/ Symantec Visual Cafe for Java 2.5 / symantec-visual-cafe-2.5-database-dev-edition.iso / VCafe / prosrc.bin / NameEditorMultiRow.java < prev    next >
Encoding:
Java Source  |  1998-03-18  |  4.6 KB  |  160 lines

  1. /*
  2.  * @(#NameEditorMultiRow.java
  3.  *
  4.  * Copyright (c) 1997 Symantec Corporation. All Rights Reserved.
  5.  *
  6.  */
  7.  
  8. package symantec.itools.db.beans.binding;
  9.  
  10. import java.awt.*;
  11. import java.beans.*;
  12.  
  13. public class NameEditorMultiRow extends java.awt.Panel implements PropertyEditor, java.awt.event.FocusListener
  14. {
  15.     java.awt.Label label1;
  16.     java.awt.Label label2;
  17.     java.awt.Label label3;
  18.     java.awt.TextField table_name;
  19.     java.awt.TextField field_name;
  20.     java.awt.TextField no_of_rows;
  21.     java.awt.Label label4;
  22.     java.awt.TextField full_name;
  23.     java.awt.Button done_button;
  24.     Name name=new Name();
  25.     public NameEditorMultiRow()
  26.     {
  27.         setLayout(null);
  28.         setSize(insets().left + insets().right + 380,insets().top + insets().bottom + 140);
  29.         setBackground(new Color(12632256));
  30.         label1 = new java.awt.Label("QueryNavigator Alias:");
  31.         label1.setBounds(insets().left + 10,insets().top + 10,150,20);
  32.         add(label1);
  33.         label2 = new java.awt.Label("Field Name:");
  34.         label2.setBounds(insets().left + 10,insets().top + 40,150,20);
  35.         add(label2);
  36.         label3 = new java.awt.Label("Number Of Rows:");
  37.         label3.setBounds(insets().left + 10,insets().top + 70,150,20);
  38.         add(label3);
  39.         table_name = new java.awt.TextField();
  40.         table_name.setBounds(insets().left + 170,insets().top + 10,200,20);
  41.         add(table_name);
  42.         field_name = new java.awt.TextField();
  43.         field_name.setBounds(insets().left + 170,insets().top + 40,200,20);
  44.         add(field_name);
  45.         no_of_rows = new java.awt.TextField();
  46.         no_of_rows.setBounds(insets().left + 170,insets().top + 70,60,20);
  47.         add(no_of_rows);
  48.         label4 = new java.awt.Label("Full Name:");
  49.         label4.setBounds(insets().left + 10,insets().top + 110,100,20);
  50.         add(label4);
  51.         full_name = new java.awt.TextField();
  52.         full_name.setBounds(insets().left + 170,insets().top + 110,200,20);
  53.         full_name.setEditable(false);
  54.         add(full_name);
  55.         table_name.addFocusListener(this);
  56.         field_name.addFocusListener(this);
  57.         no_of_rows.addFocusListener(this);
  58.     }
  59.  
  60.     public void setValue(Object o)
  61.     {
  62.     if (o != null && o instanceof java.lang.String) {
  63.             Name n = new Name((String)o);
  64.             changeName(n);
  65.     }
  66.     }
  67.  
  68.     public void setAsText(String s) throws java.lang.IllegalArgumentException
  69.     {
  70.         changeName(new Name(s));
  71.     }
  72.  
  73.     public String getJavaInitializationString()
  74.     {
  75.         return "\"" + getAsText() + "\"";
  76.     }
  77.  
  78.     private void changeName(Name n)
  79.     {
  80.         name=n;
  81.         if(!name.getTableName().equals("") && !name.getFieldName().equals(""))
  82.         {
  83.             table_name.setText(name.getTableName());
  84.             field_name.setText(name.getFieldName());
  85.             no_of_rows.setText(Integer.toString(name.getNumberOfRows()));
  86.             full_name.setText(name.getFullName());
  87.             support.firePropertyChange("",null,null);
  88.         }
  89.     }
  90.  
  91.     public Object getValue()
  92.     {
  93.         name=new Name();
  94.        // return (table_name.getText()+Name.TableSeparator+field_name.getText()+Name.SizeSeparator+no_of_rows.getText());
  95.         if(!table_name.getText().equals("") && !field_name.getText().equals(""))
  96.         {
  97.             name.setTableName(table_name.getText());
  98.             name.setFieldName(field_name.getText());
  99.             if(!no_of_rows.getText().equals(""))
  100.             {
  101.                 if(no_of_rows.getText().equals(Name.AllRowsString))
  102.                 {
  103.                     name.setNumberOfRows(Name.AllRows);
  104.                 }
  105.                 else name.setNumberOfRows(Integer.parseInt(no_of_rows.getText()));
  106.             }
  107.             else name.setNumberOfRows(1);
  108.         }
  109.         return name.getFullName();
  110.     }
  111.  
  112.     public boolean isPaintable()
  113.     {
  114.         return true;
  115.     }
  116.  
  117.     public void paintValue(java.awt.Graphics gfx,java.awt.Rectangle Box)
  118.     {
  119.  
  120.     }
  121.  
  122.  
  123.     public String getAsText()
  124.     {
  125.         return (String)getValue();
  126.     }
  127.     public String[] getTags()
  128.     {
  129.         return null;
  130.     }
  131.  
  132.     public java.awt.Component getCustomEditor()
  133.     {
  134.         return this;
  135.     }
  136.  
  137.     public boolean supportsCustomEditor()
  138.     {
  139.         return true;
  140.     }
  141.  
  142.     public void addPropertyChangeListener(PropertyChangeListener l)
  143.     {
  144.         support.addPropertyChangeListener(l);
  145.     }
  146.  
  147.     public void removePropertyChangeListener(PropertyChangeListener l)
  148.     {
  149.         support.removePropertyChangeListener(l);
  150.     }
  151.     private PropertyChangeSupport support=new PropertyChangeSupport(this);
  152.     public void focusGained(java.awt.event.FocusEvent fe){}
  153.     public void focusLost(java.awt.event.FocusEvent fe){
  154.          full_name.setText(table_name.getText()+Name.TableSeparator+field_name.getText()+Name.SizeSeparator+no_of_rows.getText());
  155.         }
  156.  
  157. }
  158.  
  159.  
  160.