| 212 | } |
| 213 | |
| 214 | void ModUploader::writeMetadata() { |
| 215 | if (!m_assetSource) |
| 216 | return; |
| 217 | |
| 218 | auto metadata = m_assetSource->metadata(); |
| 219 | auto setMetadata = [&metadata](String const& key, String const& value) { |
| 220 | if (value.empty()) |
| 221 | metadata.remove(key); |
| 222 | else |
| 223 | metadata[key] = value; |
| 224 | }; |
| 225 | |
| 226 | setMetadata("name", toSString(m_nameEditor->text())); |
| 227 | setMetadata("friendlyName", toSString(m_titleEditor->text())); |
| 228 | setMetadata("author", toSString(m_authorEditor->text())); |
| 229 | setMetadata("version", toSString(m_versionEditor->text())); |
| 230 | setMetadata("description", toSString(m_descriptionEditor->toPlainText())); |
| 231 | |
| 232 | auto tagList = StringList(); |
| 233 | for (auto pair : m_categorySelectors) { |
| 234 | if (pair.second->isChecked()) |
| 235 | tagList.append(pair.first); |
| 236 | } |
| 237 | auto tagString = tagList.join("|"); |
| 238 | setMetadata("tags", tagString); |
| 239 | |
| 240 | m_assetSource->setMetadata(metadata); |
| 241 | } |
| 242 | |
| 243 | void ModUploader::writePreview() { |
| 244 | if (m_modPreview.isNull()) |
nothing calls this directly
no test coverage detected