Example usage for com.intellij.openapi.ui ComboBoxTableRenderer addCellEditorListener

List of usage examples for com.intellij.openapi.ui ComboBoxTableRenderer addCellEditorListener

Introduction

In this page you can find the example usage for com.intellij.openapi.ui ComboBoxTableRenderer addCellEditorListener.

Prototype

@Override
    public void addCellEditorListener(CellEditorListener l) 

Source Link

Usage

From source file:com.urswolfer.intellij.plugin.gerrit.ui.GerritSelectRevisionInfoColumn.java

License:Apache License

@Nullable
@Override/*from w  ww .  j  a  v a  2  s  . c om*/
public TableCellEditor getEditor(final ChangeInfo changeInfo) {
    ComboBoxTableRenderer<String> editor = createComboBoxTableRenderer(changeInfo);
    editor.addCellEditorListener(new CellEditorListener() {
        @Override
        public void editingStopped(ChangeEvent e) {
            ComboBoxTableRenderer cellEditor = (ComboBoxTableRenderer) e.getSource();
            String value = (String) cellEditor.getCellEditorValue();
            Iterable<Pair<String, RevisionInfo>> pairs = Iterables.transform(changeInfo.revisions.entrySet(),
                    MAP_ENTRY_TO_PAIR);
            Map<String, Pair<String, RevisionInfo>> map = Maps.uniqueIndex(pairs,
                    getRevisionLabelFunction(changeInfo));
            Pair<String, RevisionInfo> pair = map.get(value);
            selectedRevisions.put(changeInfo.id, pair.getFirst());
        }

        @Override
        public void editingCanceled(ChangeEvent e) {
        }
    });
    return editor;
}