@Override
  public View getView(int position, View convertView, ViewGroup parent) {
    ViewHolder holder;
    if (convertView == null) {
      convertView = inflater.inflate(R.layout.list_item_user, null);
      holder = new ViewHolder();
      holder.login = (TextView) convertView.findViewById(R.id.userLogin);
      holder.add = (CheckBox) convertView.findViewById(R.id.addCheckBox);
      convertView.setTag(holder);
    } else {
      holder = (ViewHolder) convertView.getTag();
    }
    // final QBUser user = dataSource.get(position);
    final QBUser user = filtered.get(position);

    if (user != null) {
      holder.login.setText(user.getLogin());
      holder.add.setOnClickListener(
          new View.OnClickListener() {
            @Override
            public void onClick(View v) {
              if ((((CheckBox) v).isChecked())) {
                selected.add(user);
              } else {
                selected.remove(user);
              }
            }
          });
      holder.add.setChecked(selected.contains(user));
    }

    return convertView;
  }