@Override
      public void itemStateChanged(ItemEvent e) {
        final TrelloBoard board = (TrelloBoard)e.getItem();
        if (e.getStateChange() == ItemEvent.DESELECTED || board.equals(myRepository.getCurrentBoard())) {
          return;
        }
        if (board != TrelloRepository.UNSPECIFIED_BOARD) {
          myRepository.setCurrentBoard(board);
          new ListsComboBoxUpdater() {
            @Nullable
            @Override
            public TrelloList getSelectedItem() {
              return TrelloRepository.UNSPECIFIED_LIST;
            }
          }.queue();
        }
        else {
          myRepository.setCurrentBoard(null);
          // will not fire selection event
          myListComboBox.removeAllItems();
          myRepository.setCurrentList(null);
        }
        doApply();
      }
@Override
      public void itemStateChanged(ItemEvent e)