summaryrefslogblamecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/changemonitor/FixedComboBoxWrapper.java
blob: 6b7a4b772b60a42e670c686e02461c02a4cc10e9 (plain) (tree)
1
2
3
4
5
6





                                             







                                                                 

                                                                                                           















                                                                             
package org.openslx.dozmod.gui.changemonitor;

import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.util.Comparator;

import org.openslx.dozmod.gui.control.ComboBox;

/**
 * Monitoring a ComboBox that is not editable
 */
class FixedComboBoxWrapper<T> extends AbstractControlWrapper<T> {
	private final ComboBox<T> comboBox;
	
	public FixedComboBoxWrapper(DialogChangeMonitor dcm, ComboBox<T> combo, Comparator<T> comparator) {
		super(dcm, comparator);
		comboBox = combo;
		comboBox.addItemListener(new ItemListener() {
			public void itemStateChanged(ItemEvent e) {
				if (e.getStateChange() != ItemEvent.SELECTED)
					return;
				contentChanged();
			}
		});
	}

	@Override
	T getCurrentValue() {
		return comboBox.getItemAt(comboBox.getSelectedIndex());
	}
	
}