private void addListener(final JComponent contro) {

    if (contro instanceof JTextComponent) {

      ((JTextComponent) contro)
          .addKeyListener(
              new KeyAdapter() {
                @Override
                public void keyReleased(KeyEvent e) {
                  validaControl(contro);
                }
              });
      if (contro instanceof F2) {
        ((F2) contro)
            .setValueSelectedListener(
                (id, text) -> {
                  validaControl(contro);
                });
      }
    } else if (contro instanceof JTable) {
      ((JTable) contro)
          .getModel()
          .addTableModelListener(
              new TableModelListener() {

                public void tableChanged(TableModelEvent e) {
                  validaControl(contro);
                }
              });
    } else if (contro instanceof JComboBox) {
      ((JComboBox) contro)
          .addActionListener(
              (e) -> {
                validaControl(contro);
              });
    }
  }
Beispiel #2
0
 private static <S, T> T foldLeft(Collection<S> collection, F2<T, S, T> func, T value) {
   for (S item : collection) {
     value = func.f(value, item);
   }
   return value;
 }