getValueWidget method

dynamic getValueWidget(
  1. MapEntry entry
)

Implementation

getValueWidget(MapEntry entry) {
  if (entry.value == null) {
    return Expanded(
        child: SelectableText(
      'undefined',
      onTap: (){
        if(widget.onTap != null){
                        widget.onTap!('undefined');
                      }
      },
      style: TextStyle(color: Colors.grey),

    ));
  } else if (entry.value is int) {
    return Expanded(
        child: SelectableText(
      entry.value.toString(),
      onTap: (){
        if(widget.onTap != null){
          widget.onTap!(entry.value.toString());
        }
      },
      style: TextStyle(color: Colors.teal),
    ));
  } else if (entry.value is String) {
    return Expanded(
        child: SelectableText(
      '\"' + entry.value + '\"',
      onTap: (){
        if(widget.onTap != null){
          widget.onTap!('\"' + entry.value + '\"');
        }
      },
      style: TextStyle(color: Colors.redAccent),
    ));
  } else if (entry.value is bool) {
    return Expanded(
        child: SelectableText(
      entry.value.toString(),
      onTap: (){
        if(widget.onTap != null){
          widget.onTap!(entry.value.toString());
        }
      },
      style: TextStyle(color: Colors.purple),
    ));
  } else if (entry.value is double) {
    return Expanded(
        child: SelectableText(
      entry.value.toString(),
      onTap: (){
        if(widget.onTap != null){
          widget.onTap!(entry.value.toString());
        }
      },
      style: TextStyle(color: Colors.teal),
    ));
  } else if (entry.value is List) {
    if (entry.value.isEmpty) {
      return SelectableText(
        'Array[0]',
        style: TextStyle(color: Colors.grey),
        onTap: (){
          if(widget.onTap != null){
            widget.onTap!('Array[0]');
          }
        },
      );
    } else {
      return InkWell(
          child: SelectableText(
            'Array<${getTypeName(entry.value[0])}>[${entry.value.length}]',
            style: TextStyle(color: Colors.grey),
            onTap: (){
              if(widget.onTap != null){
                widget.onTap!('Array<${getTypeName(entry.value[0])}>[${entry.value.length}]');
              }
              setState(() {
                openFlag[entry.key] = !(openFlag[entry.key] ?? false);
              });
            },
          ),
          onTap: () {

          });
    }
  }
  return InkWell(
      child: SelectableText(
        'Object',
        style: TextStyle(color: Colors.grey),
        onTap: (){
          if(widget.onTap != null){
            widget.onTap!('Object');
          }
          setState(() {
          openFlag[entry.key] = !(openFlag[entry.key] ?? false);
        });
        },
      ),
      onTap: () {

      });
}