| 4008 | } |
| 4009 | |
| 4010 | QString VarString(const ShaderVariable &v, const ShaderConstant &c) |
| 4011 | { |
| 4012 | if(!v.members.isEmpty()) |
| 4013 | return QString(); |
| 4014 | |
| 4015 | if(v.type == VarType::Enum) |
| 4016 | { |
| 4017 | uint64_t val = v.value.u64v[0]; |
| 4018 | |
| 4019 | for(size_t i = 0; i < c.type.members.size(); i++) |
| 4020 | if(val == c.type.members[i].defaultValue) |
| 4021 | return c.type.members[i].name; |
| 4022 | |
| 4023 | return QApplication::translate("BufferFormatter", "Unknown %1 (%2)") |
| 4024 | .arg(QString(c.type.name)) |
| 4025 | .arg(val); |
| 4026 | } |
| 4027 | |
| 4028 | if(v.rows == 1) |
| 4029 | return RowString(v, 0); |
| 4030 | |
| 4031 | QString ret; |
| 4032 | for(int i = 0; i < (int)v.rows; i++) |
| 4033 | { |
| 4034 | if(i > 0) |
| 4035 | ret += lit("\n"); |
| 4036 | ret += lit("{") + RowString(v, i) + lit("}"); |
| 4037 | } |
| 4038 | |
| 4039 | return ret; |
| 4040 | } |
| 4041 | |
| 4042 | QString RowTypeString(const ShaderVariable &v) |
| 4043 | { |