aboutsummaryrefslogtreecommitdiff
path: root/core/src/Model/Workflow/Workflow.hpp
diff options
context:
space:
mode:
authorrtk0c <[email protected]>2021-06-07 12:19:51 -0700
committerrtk0c <[email protected]>2021-06-07 12:19:51 -0700
commitd7ee2efaca226fc478e3f0c78abdbe86a887f17a (patch)
tree81670fefb7cdba3c5fa0ab890f7d84e24c194bdb /core/src/Model/Workflow/Workflow.hpp
parenta180e1b56025c6b7d81d2e587ad90531d29de44c (diff)
Complete asset loading/saving and UI management logic
Diffstat (limited to 'core/src/Model/Workflow/Workflow.hpp')
-rw-r--r--core/src/Model/Workflow/Workflow.hpp18
1 files changed, 13 insertions, 5 deletions
diff --git a/core/src/Model/Workflow/Workflow.hpp b/core/src/Model/Workflow/Workflow.hpp
index 51596e5..8b3db8a 100644
--- a/core/src/Model/Workflow/Workflow.hpp
+++ b/core/src/Model/Workflow/Workflow.hpp
@@ -178,8 +178,8 @@ protected:
class Workflow : public Asset
{
public:
- using CategoryType = WorkflowAssetCategory;
- static constinit const WorkflowAssetCategory Category;
+ using CategoryType = WorkflowAssetList;
+ static constinit const WorkflowAssetList Category;
private:
friend class WorkflowNode;
@@ -276,12 +276,20 @@ private:
std::pair<std::unique_ptr<WorkflowNode>&, size_t> AllocWorkflowStep();
};
-class WorkflowAssetCategory : public AssetCategory
+class WorkflowAssetList final : public AssetListTyped<Workflow>
{
public:
virtual void DiscoverFiles(const std::function<void(SavedAsset)>& callback) const override;
- virtual Workflow* CreateEmpty(const SavedAsset& diskForm) const override;
- virtual Workflow* Load(const SavedAsset& diskForm) const override;
+
+ virtual std::string RetrieveNameFromFile(const std::filesystem::path& file) const override;
+ virtual uuids::uuid RetrieveUuidFromFile(const std::filesystem::path& file) const override;
+ virtual std::filesystem::path RetrievePathFromAsset(const SavedAsset& asset) const override;
+
+ virtual void SaveEmptyInstance(const SavedAsset& asset) const override;
+ virtual Workflow* CreateEmptyInstance(const SavedAsset& diskForm) const override;
+
+ virtual Workflow* LoadImpl(const SavedAsset& diskForm) const override;
+
virtual void SetupDetailsTable(const char* tableId) const override;
virtual void DrawBigIcon(const SavedAsset& asset) const override;
virtual void DrawDetailsTableRow(const SavedAsset& asset) const override;