Improvement: ListSelector added to Plugin Data Mines
This commit is contained in:
1 parent
489e92277f
commit
8e05d35a08
3 files changed
+46
No files matched your search
@@ -13,6 +13,17 @@
|
||||
"actionFunction": "payload.executeAction",
|
||||
"actionProject": "Community-Plugins"
|
||||
},
|
||||
{
|
||||
"action": "Add Specified Plugin Data Mine",
|
||||
"label": "Add Specified Plugin Data Mine",
|
||||
"iconPathOn": "data-mine",
|
||||
"iconPathOff": "data-mine",
|
||||
"iconProject": "Data-Mining",
|
||||
"actionProject": "Community-Plugins",
|
||||
"relatedUiObject": "Data Mine",
|
||||
"dontShowAtFullscreen": true,
|
||||
"actionFunction": "payload.executeAction"
|
||||
},
|
||||
{
|
||||
"action": "Delete UI Object",
|
||||
"actionProject": "Visual-Scripting",
|
||||
@@ -27,6 +38,9 @@
|
||||
"addLeftIcons": true,
|
||||
"level": 1,
|
||||
"propertyNameAtParent": "pluginDataMines",
|
||||
"editors": {
|
||||
"list": true
|
||||
},
|
||||
"attachingRules": {
|
||||
"compatibleTypes": "->Plugin Project->"
|
||||
},
|
||||
|
||||
@@ -38,6 +38,11 @@ function newCommunityPluginsActionSwitch() {
|
||||
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.addMissingPluginDataMines(action.node, action.rootNodes)
|
||||
}
|
||||
break
|
||||
case 'Add Specified Plugin Data Mine':
|
||||
{
|
||||
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.addSpecifiedPluginDataMine(action.node, action.rootNodes)
|
||||
}
|
||||
break
|
||||
case 'Add Missing Plugin Trading Mines':
|
||||
{
|
||||
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.addMissingPluginTradingMines(action.node, action.rootNodes)
|
||||
|
||||
@@ -3,6 +3,7 @@ function newPluginsFunctionLibraryPluginsFunctions() {
|
||||
addMissingPluginProjects: addMissingPluginProjects,
|
||||
addMissingPluginTypes: addMissingPluginTypes,
|
||||
addMissingPluginDataMines: addMissingPluginDataMines,
|
||||
addSpecifiedPluginDataMine: addSpecifiedPluginDataMine,
|
||||
addMissingPluginTradingMines: addMissingPluginTradingMines,
|
||||
addMissingPluginTradingSystems: addMissingPluginTradingSystems,
|
||||
addMissingPluginTradingEngines: addMissingPluginTradingEngines,
|
||||
@@ -65,6 +66,32 @@ function newPluginsFunctionLibraryPluginsFunctions() {
|
||||
}
|
||||
}
|
||||
|
||||
function addSpecifiedPluginDataMine(node, rootNodes) {
|
||||
let action = { node: node }
|
||||
|
||||
let projectName = UI.projects.communityPlugins.utilities.plugins.getProjectName(node)
|
||||
if (projectName === "" || projectName === undefined) {
|
||||
if (node.payload.parentNode !== undefined) {
|
||||
node.payload.parentNode.payload.uiObject.setErrorMessage("Config codeName must have the name of the project.")
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
UI.projects.communityPlugins.utilities.plugins.getPluginFileNames(projectName, 'Data-Mines', onNamesArrived)
|
||||
|
||||
function onNamesArrived(fileNames) {
|
||||
let eventSubscriptionId = node.payload.uiObject.container.eventHandler.listenToEvent('listSelectorClicked', onListSelect)
|
||||
node.payload.uiObject.listSelector.activate(action, fileNames, eventSubscriptionId)
|
||||
|
||||
function onListSelect(event) {
|
||||
let selectedArray = []
|
||||
selectedArray.push(event.selectedNode)
|
||||
UI.projects.communityPlugins.utilities.plugins.addMissingPluginFiles(node, selectedArray, 'Data-Mines', 'Data Mine', 'Data-Mining')
|
||||
node.payload.uiObject.container.eventHandler.stopListening('listSelectorClicked')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function addMissingPluginTradingMines(node, rootNodes) {
|
||||
let projectName = UI.projects.communityPlugins.utilities.plugins.getProjectName(node)
|
||||
if (projectName === "" || projectName === undefined) {
|
||||
|
||||
Reference in new issue
Block a user