diff --git a/Projects/Foundations/Icons/Trading/trading-bot.png b/Projects/Algorithmic-Trading/Icons/Trading/trading-bot.png similarity index 100% rename from Projects/Foundations/Icons/Trading/trading-bot.png rename to Projects/Algorithmic-Trading/Icons/Trading/trading-bot.png diff --git a/Projects/Foundations/Icons/Trading/trading-mine.png b/Projects/Algorithmic-Trading/Icons/Trading/trading-mine.png similarity index 100% rename from Projects/Foundations/Icons/Trading/trading-mine.png rename to Projects/Algorithmic-Trading/Icons/Trading/trading-mine.png diff --git a/Projects/Algorithmic-Trading/Icons/algorithmic-trading-project.png b/Projects/Algorithmic-Trading/Icons/algorithmic-trading-project.png new file mode 100644 index 000000000..9c5299e7f Binary files /dev/null and b/Projects/Algorithmic-Trading/Icons/algorithmic-trading-project.png differ diff --git a/Projects/Algorithmic-Trading/Schemas/App-Schema/algorithmic-trading-project.json b/Projects/Algorithmic-Trading/Schemas/App-Schema/algorithmic-trading-project.json new file mode 100644 index 000000000..9a8e89cd4 --- /dev/null +++ b/Projects/Algorithmic-Trading/Schemas/App-Schema/algorithmic-trading-project.json @@ -0,0 +1,47 @@ +{ + "type": "Algorithmic-Trading Project", + "menuItems": [ + { + "action": "Add Missing Children", + "label": "Add Missing Children", + "iconPathOn": "algorithmic-trading-project", + "iconPathOff": "algorithmic-trading-project", + "iconProject": "Algorithmic-Trading", + "actionFunction": "payload.executeAction", + "actionProject": "Foundations" + }, + { + "action": "Add UI Object", + "label": "Add Trading Mine", + "relatedUiObject": "Trading Mine", + "relatedUiObjectProject": "Algorithmic-Trading", + "actionFunction": "payload.executeAction", + "actionProject": "Foundations" + }, + { + "action": "Delete UI Object", + "askConfirmation": true, + "confirmationLabel": "Confirm to Delete", + "actionFunction": "payload.executeAction", + "label": "Delete", + "iconPathOn": "delete-entity", + "iconPathOff": "delete-entity", + "actionProject": "Foundations" + } + ], + "isProjectHead": true, + "isTitleAllwaysVisible": false, + "addLeftIcons": true, + "isPinned": true, + "positionLocked": true, + "icon": "algorithmic-trading-project", + "childrenNodesProperties": [ + { + "name": "projectDefinition", + "type": "node", + "childType": "Project Definition", + "project": "Foundations", + "autoAdd": true + } + ] +} \ No newline at end of file diff --git a/Projects/Foundations/Schemas/App-Schema/trading-bot.json b/Projects/Algorithmic-Trading/Schemas/App-Schema/trading-bot.json similarity index 72% rename from Projects/Foundations/Schemas/App-Schema/trading-bot.json rename to Projects/Algorithmic-Trading/Schemas/App-Schema/trading-bot.json index 0cc624da4..c33a7d668 100644 --- a/Projects/Foundations/Schemas/App-Schema/trading-bot.json +++ b/Projects/Algorithmic-Trading/Schemas/App-Schema/trading-bot.json @@ -7,25 +7,29 @@ "iconPathOn": "configuration", "iconPathOff": "configuration", "dontShowAtFullscreen": true, - "actionFunction": "uiObject.configEditor.activate" + "actionFunction": "uiObject.configEditor.activate", + "actionProject": "Foundations" }, { "action": "Add UI Object", "label": "Add Process Definition", "relatedUiObject": "Process Definition", - "actionFunction": "payload.executeAction" + "actionFunction": "payload.executeAction", + "actionProject": "Foundations" }, { "action": "Add UI Object", "label": "Add Product Definition", "relatedUiObject": "Product Definition", - "actionFunction": "payload.executeAction" + "actionFunction": "payload.executeAction", + "actionProject": "Foundations" }, { "action": "Add UI Object", "label": "Add Product Definition Folder", "relatedUiObject": "Product Definition Folder", - "actionFunction": "payload.executeAction" + "actionFunction": "payload.executeAction", + "actionProject": "Foundations" }, { "action": "Delete UI Object", @@ -34,7 +38,8 @@ "label": "Delete", "iconPathOn": "delete-entity", "iconPathOff": "delete-entity", - "actionFunction": "payload.executeAction" + "actionFunction": "payload.executeAction", + "actionProject": "Foundations" } ], "isTitleAllwaysVisible": true, @@ -54,19 +59,22 @@ "name": "processes", "type": "array", "childType": "Process Definition", - "autoAdd": true + "autoAdd": true, + "project": "Foundations" }, { "name": "products", "type": "array", "childType": "Product Definition", - "autoAdd": true + "autoAdd": true, + "project": "Foundations" }, { "name": "productDefinitionFolders", "type": "array", "childType": "Product Definition Folder", - "autoAdd": true + "autoAdd": true, + "project": "Foundations" } ], "propertyNameAtParent": "tradingBots" diff --git a/Projects/Foundations/Schemas/App-Schema/trading-mine.json b/Projects/Algorithmic-Trading/Schemas/App-Schema/trading-mine.json similarity index 64% rename from Projects/Foundations/Schemas/App-Schema/trading-mine.json rename to Projects/Algorithmic-Trading/Schemas/App-Schema/trading-mine.json index eb2251d85..1f23e2194 100644 --- a/Projects/Foundations/Schemas/App-Schema/trading-mine.json +++ b/Projects/Algorithmic-Trading/Schemas/App-Schema/trading-mine.json @@ -6,20 +6,26 @@ "label": "Configure", "iconPathOn": "configuration", "iconPathOff": "configuration", + "iconProject": "Foundations", "dontShowAtFullscreen": true, - "actionFunction": "uiObject.configEditor.activate" + "actionFunction": "uiObject.configEditor.activate", + "actionProject": "Foundations" }, { "action": "Add UI Object", "label": "Add Trading Bot", "relatedUiObject": "Trading Bot", - "actionFunction": "payload.executeAction" + "relatedUiObjectProject": "Algorithmic-Trading", + "actionFunction": "payload.executeAction", + "actionProject": "Foundations" }, { "action": "Add UI Object", "label": "Add Plotter", "relatedUiObject": "Plotter", - "actionFunction": "payload.executeAction" + "relatedUiObjectProject": "Foundations", + "actionFunction": "payload.executeAction", + "actionProject": "Foundations" }, { "action": "Delete UI Object", @@ -28,7 +34,8 @@ "label": "Delete", "iconPathOn": "delete-entity", "iconPathOff": "delete-entity", - "actionFunction": "payload.executeAction" + "actionFunction": "payload.executeAction", + "actionProject": "Foundations" } ], "isTitleAllwaysVisible": true, @@ -45,12 +52,14 @@ { "name": "tradingBots", "type": "array", - "childType": "Trading Bot" + "childType": "Trading Bot", + "project": "Algorithmic-Trading" }, { "name": "plotters", "type": "array", - "childType": "Plotter" + "childType": "Plotter", + "project": "Foundations" } ] } \ No newline at end of file diff --git a/Projects/Data-Mining/Schemas/App-Schema/data-mine.json b/Projects/Data-Mining/Schemas/App-Schema/data-mine.json index 30943c8bb..fd28d86f6 100644 --- a/Projects/Data-Mining/Schemas/App-Schema/data-mine.json +++ b/Projects/Data-Mining/Schemas/App-Schema/data-mine.json @@ -6,6 +6,7 @@ "label": "Configure", "iconPathOn": "configuration", "iconPathOff": "configuration", + "iconProject": "Foundations", "dontShowAtFullscreen": true, "actionFunction": "uiObject.configEditor.activate", "actionProject": "Foundations" diff --git a/Projects/Data-Mining/Schemas/App-Schema/data-mining-project.json b/Projects/Data-Mining/Schemas/App-Schema/data-mining-project.json index e6190d9e1..46d4dce98 100644 --- a/Projects/Data-Mining/Schemas/App-Schema/data-mining-project.json +++ b/Projects/Data-Mining/Schemas/App-Schema/data-mining-project.json @@ -4,7 +4,9 @@ { "action": "Add Missing Children", "label": "Add Missing Children", - "relatedUiObject": "Foundations Project", + "iconPathOn": "data-mining-project", + "iconPathOff": "data-mining-project", + "iconProject": "Data-Mining", "actionFunction": "payload.executeAction", "actionProject": "Foundations" }, diff --git a/Projects/Foundations/UI/Spaces/Floating-Space/CircularMenuItem.js b/Projects/Foundations/UI/Spaces/Floating-Space/CircularMenuItem.js index ca1b8496e..81cb8a5f3 100644 --- a/Projects/Foundations/UI/Spaces/Floating-Space/CircularMenuItem.js +++ b/Projects/Foundations/UI/Spaces/Floating-Space/CircularMenuItem.js @@ -265,6 +265,10 @@ function newCircularMenuItem() { thisObject.iconOff = UI.projects.foundations.spaces.designSpace.getIconByProjectAndName('Foundations', thisObject.secondaryIcon) } else { + /* + TODO : This code needs to be cleaned and reorganized. It is not clear how a menu item icon is going to be selected. + */ + if (thisObject.relatedUiObject !== undefined && thisObject.iconProject !== undefined) { thisObject.iconOn = UI.projects.foundations.spaces.designSpace.getIconByProjectAndType(thisObject.iconProject, thisObject.relatedUiObject) thisObject.iconOff = UI.projects.foundations.spaces.designSpace.getIconByProjectAndType(thisObject.iconProject, thisObject.relatedUiObject)