private void initSelectPosition(int position){
  if (mSelectMode == ISelectable.SELECT_MODE_SINGLE) {
    if (mSelectedPosition == ISelectable.INVALID_POSITION) {
      mSelectedPosition=position;
    }
  }
 else   if (mSelectMode == ISelectable.SELECT_MODE_MULTI) {
    if (!mSelectedPositions.contains(position))     mSelectedPositions.add(position);
  }
 else {
    throw new RuntimeException();
  }
}

private void initSelectPosition ( int position ) { if ( mSelectMode == ISelectable . SELECT_MODE_SINGLE ) { if ( mSelectedPosition == ISelectable . INVALID_POSITION ) { mSelectedPosition = position ; } } else if ( mSelectMode == ISelectable . SELECT_MODE_MULTI ) { if ( ! mSelectedPositions . contains ( position ) ) mSelectedPositions . add ( position ) ; } else { throw new RuntimeException ( ) ; } }
this will only called once .
