code: def default_field_to_parameter(self, default_field):
          
          if default_field.get('type') == QVariant.Double:
              parameter = FloatParameter()
          elif default_field.get('type') in qvariant_whole_numbers:
              parameter = IntegerParameter()
          else:
              return
          default_value = default_field.get('default_value')
          if not default_value:
              message = (
                  'InaSAFE default field %s does not have default value'
                  % default_field.get('name'))
              LOGGER.exception(message)
              return
  
          parameter.guid = default_field.get('key')
          parameter.name = default_value.get('name')
          parameter.is_required = True
          parameter.precision = default_field.get('precision')
          parameter.minimum_allowed_value = default_value.get(
              'min_value', 0)
          parameter.maximum_allowed_value = default_value.get(
              'max_value', 100000000)
          parameter.help_text = default_value.get('help_text')
          parameter.description = default_value.get('description')
  
          # Check if user ask to restore to the most default value.
          if self.is_restore_default:
              parameter._value = default_value.get('default_value')
          else:
              # Current value
              qsetting_default_value = get_inasafe_default_value_qsetting(
                  self.settings, GLOBAL, default_field['key'])
  
              # To avoid python error
              if qsetting_default_value > parameter.maximum_allowed_value:
                  qsetting_default_value = parameter.maximum_allowed_value
              if qsetting_default_value < parameter.minimum_allowed_value:
                  qsetting_default_value = parameter.minimum_allowed_value
  
              parameter.value = qsetting_default_value
          return parameter
docs: Obtain parameter from default field.
  
          :param default_field: A default field definition.
          :type default_field: dict
  
          :returns: A parameter object.
          :rtype: FloatParameter, IntegerParameter