code: def checkLimits(self, row, value):
          
          # extract the selected component names
          param = self._parameters[row]
          components = param['selection']
          if len(components) == 0:
              return False
          ptype = param['parameter']
          mins = []
          maxs = []
          for comp in components:
              # get the limit details for the currently selected parameter type
              try:
                  details = comp.auto_details()[ptype]
                  mins.append(details['min'])
                  maxs.append(details['max'])
              except KeyError:
                  raise
                  return False
          lower = max(mins)
          upper = min(maxs)
          if lower <= value <= upper:
              return True
          else:
              # print 'value out of bounds:'
              # print 'lower', lower, 'upper', upper, 'value', value
              return False
docs: Check that *value* is within the minimum and maximum allowable 
          range for the parameter at index *row*
  
          :param row: the ith parameter number
          :type row: int
          :param value: the candidate value to for start or stop fields
          :returns: bool -- True if *value* within range