package ExV;

import javax.swing.*;
import javax.swing.event.*;
import javax.swing.tree.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;

public class MyJComboBox extends JComboBox {
    /** Creates new form MyJComboBox */
   public MyJComboBox() {
      initComponents ();
   }
/** This method is called from within the constructor to
   * initialize the form.
   * WARNING: Do NOT modify this code. The content of this method is
   * always regenerated by the FormEditor.
   */
   private void initComponents () {//GEN-BEGIN:initComponents
   }//GEN-END:initComponents

   boolean ignoreChange = false;
   public String type;

   MyJComboBox (String type, ActionListener l, boolean editable){
      super ();
      this .type = type;
      setEditable (editable);
      addActionListener (l);
   }
   public String getText (){
      return (String) getSelectedItem ();
   }
   
   public void setText (String s){
      ignoreChange = true;
      for (int i = 0; i < getItemCount (); i++){
         if (getItemAt (i) .equals (s)){
            setSelectedIndex (i);
            ignoreChange = false;
            return;
         }
      }
      addItem (s);
      setSelectedIndex (getItemCount ()-1);
      ignoreChange = false;
   }
   protected void selectedItemChanged (){
      if (!ignoreChange){
         super .selectedItemChanged ();
          //System.out.println ("New item is:" + getSelectedItem ());
      }
   }  
}
