package org.basex.gui.layout; import java.awt.Window; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import javax.swing.JComboBox; import org.basex.gui.dialog.Dialog; /** * Project specific ComboBox implementation. * * @author BaseX Team 2005-12, BSD License * @author Christian Gruen */ public final class BaseXCombo extends JComboBox { /** * Constructor. * @param ch combobox choices * @param win parent window */ public BaseXCombo(final Window win, final String... ch) { super(ch); BaseXLayout.addInteraction(this, win); if(!(win instanceof Dialog)) return; addItemListener(new ItemListener() { @Override public void itemStateChanged(final ItemEvent ie) { if(isValid() && ie.getStateChange() == ItemEvent.SELECTED) { ((Dialog) win).action(ie.getSource()); } } }); } }