diff options
Diffstat (limited to 'core/src/UI')
-rw-r--r-- | core/src/UI/UI_Workflows.cpp | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/core/src/UI/UI_Workflows.cpp b/core/src/UI/UI_Workflows.cpp index 1a4294f..a375ec0 100644 --- a/core/src/UI/UI_Workflows.cpp +++ b/core/src/UI/UI_Workflows.cpp @@ -17,26 +17,26 @@ namespace ImNodes = ax::NodeEditor; namespace { +enum class WorkflowCategory +{ + NumericCategory, + TextCategory, + DocumentsCategory, + UserInputCategory, + SystemInputCategory, + OutputCategory, +}; + class WorkflowDatabase { public: using WorkflowNodeConstructor = std::unique_ptr<WorkflowNode> (*)(); - enum Category - { - NumericCategory, - TextCategory, - DocumentsCategory, - UserInputCategory, - SystemInputCategory, - OutputCategory, - }; - struct Candidate { WorkflowNodeConstructor Constructor; std::string Name; - Category Category; + WorkflowCategory Category; }; private: @@ -71,41 +71,41 @@ public: mCandidates.push_back(Candidate{ .Constructor = []() -> std::unique_ptr<WorkflowNode> { return std::make_unique<NumericOperationNode>(NumericOperationNode::Addition); }, .Name = "Add", - .Category = NumericCategory, + .Category = WorkflowCategory::NumericCategory, }); mCandidates.push_back(Candidate{ .Constructor = []() -> std::unique_ptr<WorkflowNode> { return std::make_unique<NumericOperationNode>(NumericOperationNode::Subtraction); }, .Name = "Subtract", - .Category = NumericCategory, + .Category = WorkflowCategory::NumericCategory, }); mCandidates.push_back(Candidate{ .Constructor = []() -> std::unique_ptr<WorkflowNode> { return std::make_unique<NumericOperationNode>(NumericOperationNode::Multiplication); }, .Name = "Multiply", - .Category = NumericCategory, + .Category = WorkflowCategory::NumericCategory, }); mCandidates.push_back(Candidate{ .Constructor = []() -> std::unique_ptr<WorkflowNode> { return std::make_unique<NumericOperationNode>(NumericOperationNode::Division); }, .Name = "Divide", - .Category = NumericCategory, + .Category = WorkflowCategory::NumericCategory, }); mCandidates.push_back(Candidate{ .Constructor = []() -> std::unique_ptr<WorkflowNode> { return std::make_unique<NumericExpressionNode>(); }, .Name = "Evaluate expression", - .Category = NumericCategory, + .Category = WorkflowCategory::NumericCategory, }); mTextOffset = mCandidates.size(); mCandidates.push_back(Candidate{ .Constructor = []() -> std::unique_ptr<WorkflowNode> { return std::make_unique<TextFormatterNode>(); }, .Name = "Fill template text", - .Category = TextCategory, + .Category = WorkflowCategory::TextCategory, }); mDocumentOffset = mCandidates.size(); mCandidates.push_back(Candidate{ .Constructor = []() -> std::unique_ptr<WorkflowNode> { return std::make_unique<DocumentTemplateExpansionNode>(); }, .Name = "Document template", - .Category = Category::DocumentsCategory, + .Category = WorkflowCategory::DocumentsCategory, }); /* Inputs */ @@ -114,13 +114,13 @@ public: mCandidates.push_back(Candidate{ .Constructor = []() -> std::unique_ptr<WorkflowNode> { return std::make_unique<FormInputNode>(); }, .Name = "Input: form", - .Category = Category::UserInputCategory, + .Category = WorkflowCategory::UserInputCategory, }); mCandidates.push_back(Candidate{ .Constructor = []() -> std::unique_ptr<WorkflowNode> { return std::make_unique<DatabaseRowsInputNode>(); }, .Name = "Input: database rows", - .Category = Category::UserInputCategory, + .Category = WorkflowCategory::UserInputCategory, }); mSystemInputNodes = mCandidates.size(); |