# File lib_wpm/wpm.rb, line 1120
    def get_property(attr_map, value, *types)
      prop_type = attr_map['type']
      unless (types.include? prop_type) then
        raise PropertyError, "not allowd property type: #{prop_type.inspect}: at #{@widget_id.inspect}"
      end
      prop_value = value.strip
      case (prop_type)
      when 'string'
        return prop_value
      when 'bool'
        return get_bool_property(prop_value)
      when 'number'
        return get_number_property(prop_value)
      when 'method'
        return get_method_property(prop_value)
      when 'accessor'
        return get_accessor_property(prop_value)
      when 'eval'
        return get_eval_property(prop_value)
      else
        raise PropertyError, "unknown property type: #{prop_type.inspect}: at #{@widget_id.inspect}"
      end
    end