| #include "rive/assets/file_asset.hpp" | |
| #include "rive/backboard.hpp" | |
| #include "rive/importers/backboard_importer.hpp" | |
| using namespace rive; | |
| StatusCode FileAsset::import(ImportStack& importStack) | |
| { | |
| auto backboardImporter = importStack.latest<BackboardImporter>(Backboard::typeKey); | |
| if (backboardImporter == nullptr) | |
| { | |
| return StatusCode::MissingObject; | |
| } | |
| backboardImporter->addFileAsset(this); | |
| return Super::import(importStack); | |
| } | |
| std::string FileAsset::uniqueFilename() | |
| { | |
| // remove final extension | |
| std::string uniqueFilename = name(); | |
| std::size_t finalDot = uniqueFilename.rfind('.'); | |
| if (finalDot != std::string::npos) | |
| { | |
| uniqueFilename = uniqueFilename.substr(0, finalDot); | |
| } | |
| return uniqueFilename + "-" + std::to_string(assetId()) + "." + fileExtension(); | |
| } |