Update DesignSpace.js
This commit is contained in:
1 parent
4bcd121ba3
commit
0798257b97
1 file changed
+52
-283
+52
-283
@@ -26,298 +26,68 @@ function newDesignSpace() {
|
||||
return thisObject
|
||||
|
||||
function initialize() {
|
||||
loadIconCollection()
|
||||
buildIconByUiObjectTypeMap()
|
||||
loadIconCollection(onIconsReady)
|
||||
|
||||
thisObject.workspace = newWorkspace()
|
||||
thisObject.workspace.initialize()
|
||||
}
|
||||
function onIconsReady() {
|
||||
buildIconByUiObjectTypeMap()
|
||||
thisObject.workspace = newWorkspace()
|
||||
thisObject.workspace.initialize()
|
||||
}
|
||||
|
||||
function buildIconByUiObjectTypeMap() {
|
||||
/* Take types-icons relationships defined at the schema */
|
||||
for (let i = 0; i < APP_SCHEMA_ARRAY.length; i++) {
|
||||
let nodeDefinition = APP_SCHEMA_ARRAY[i]
|
||||
let iconName = nodeDefinition.icon
|
||||
if (iconName !== undefined) {
|
||||
let icon = thisObject.iconCollection.get(iconName)
|
||||
thisObject.iconByUiObjectType.set(nodeDefinition.type, icon)
|
||||
function buildIconByUiObjectTypeMap() {
|
||||
/* Take types-icons relationships defined at the schema */
|
||||
for (let i = 0; i < APP_SCHEMA_ARRAY.length; i++) {
|
||||
let nodeDefinition = APP_SCHEMA_ARRAY[i]
|
||||
let iconName = nodeDefinition.icon
|
||||
if (iconName !== undefined) {
|
||||
let icon = thisObject.iconCollection.get(iconName)
|
||||
thisObject.iconByUiObjectType.set(nodeDefinition.type, icon)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function loadIconCollection() {
|
||||
const iconsNames = [
|
||||
'analysis',
|
||||
'analysis-1',
|
||||
'approve',
|
||||
'attach',
|
||||
'attractive',
|
||||
'pyramid',
|
||||
'brainstorming',
|
||||
'broken-link',
|
||||
'chat',
|
||||
'chronometer',
|
||||
'compass',
|
||||
'competition',
|
||||
'content',
|
||||
'design-tool',
|
||||
'grid',
|
||||
'headphones',
|
||||
'html',
|
||||
'image',
|
||||
'layout',
|
||||
'loading',
|
||||
'login',
|
||||
'pantone',
|
||||
'paper-plane',
|
||||
'photo-camera',
|
||||
'piggy-bank',
|
||||
'pipette',
|
||||
'pixel',
|
||||
'placeholder',
|
||||
'planning',
|
||||
'promotion',
|
||||
'pyramid',
|
||||
'quality',
|
||||
'responsive',
|
||||
'schedule',
|
||||
'search',
|
||||
'security',
|
||||
'settings',
|
||||
'sitemap',
|
||||
'startup',
|
||||
'support',
|
||||
'tap',
|
||||
'menu-fix-pinned',
|
||||
'menu-fix-unpinned',
|
||||
'targeting',
|
||||
'task',
|
||||
'testing',
|
||||
'text',
|
||||
'timeline',
|
||||
'tools',
|
||||
'delete',
|
||||
'upload',
|
||||
'vector',
|
||||
'video-player',
|
||||
'menu-mobility-freeze',
|
||||
'menu-mobility-unfreeze',
|
||||
'menu-tree-minus',
|
||||
'menu-tree-plus',
|
||||
'menu-backup',
|
||||
'menu-share',
|
||||
'stop',
|
||||
'stage-open',
|
||||
'stage-close',
|
||||
'stage-trigger',
|
||||
'stage-trigger-trigger-on',
|
||||
'stage-trigger-trigger-off',
|
||||
'stage-trigger-take-position',
|
||||
'menu-tensor-fixed-angles',
|
||||
'menu-tensor-free-angles',
|
||||
'stage-open-position-size',
|
||||
'stage-open-take-profit',
|
||||
'stage-open-postion-rate',
|
||||
'session-live-trading',
|
||||
'session-paper-trading',
|
||||
'session-backtesting',
|
||||
'session-forward-testing',
|
||||
'network',
|
||||
'network-node',
|
||||
'bot-trading',
|
||||
'layer-manager',
|
||||
'process',
|
||||
'bot-indicator',
|
||||
'bot-sensor',
|
||||
'time-period',
|
||||
'data-mine',
|
||||
'procedure-loop',
|
||||
'calculations-procedure',
|
||||
'data-building-procedure',
|
||||
'procedure-initialization',
|
||||
'process-definition',
|
||||
'output-dataset',
|
||||
'data-dependency',
|
||||
'product-definition',
|
||||
'plotter-module',
|
||||
'status-dependency',
|
||||
'record-property',
|
||||
'record-definition',
|
||||
'plotter',
|
||||
'plotter-panel',
|
||||
'dataset-definition',
|
||||
'status-report',
|
||||
'execution-finished-event',
|
||||
'process-dependencies',
|
||||
'process-output',
|
||||
'social-bot',
|
||||
'execution-started-event',
|
||||
'shapes',
|
||||
'chart-point',
|
||||
'style',
|
||||
'chart-points',
|
||||
'shapes-polygon-vertex',
|
||||
'shapes-polygon-border',
|
||||
'shapes-polygon-body',
|
||||
'chart-point-formula',
|
||||
'style-condition',
|
||||
'shapes-polygon',
|
||||
'data-entry',
|
||||
'data-formula',
|
||||
'clone',
|
||||
'exchange-account-asset',
|
||||
'exchange-account-key',
|
||||
'user-keys',
|
||||
'user-assets',
|
||||
'asset',
|
||||
'exchange-accounts',
|
||||
'user-account',
|
||||
'market',
|
||||
'exchange-assets',
|
||||
'crypto-exchanges',
|
||||
'crypto-exchange',
|
||||
'exchange-markets',
|
||||
'charting-space',
|
||||
'time-line-chart',
|
||||
'time-frame-scale',
|
||||
'time-scale',
|
||||
'rate-scale',
|
||||
'time-machine',
|
||||
'data-product',
|
||||
'single-market-data',
|
||||
'data-storage',
|
||||
'dataset',
|
||||
'viewport',
|
||||
'bitfinex',
|
||||
'binance',
|
||||
'kucoin',
|
||||
'bittrex',
|
||||
'kraken',
|
||||
'poloniex',
|
||||
'upbit',
|
||||
'monero',
|
||||
'tether',
|
||||
'tron',
|
||||
'stellar',
|
||||
'qtum',
|
||||
'neo',
|
||||
'litecoin',
|
||||
'ethereum-classic',
|
||||
'ethereum',
|
||||
'eos',
|
||||
'dash',
|
||||
'cardano',
|
||||
'bitcoin-cash',
|
||||
'bitcoin',
|
||||
'binance-coin',
|
||||
'trend',
|
||||
'oscillator',
|
||||
'moving-average',
|
||||
'histogram',
|
||||
'band',
|
||||
'volume',
|
||||
'candles',
|
||||
'bitmex',
|
||||
'liquid',
|
||||
'hitbtc',
|
||||
'us-dollar',
|
||||
'distance-to-parent-200',
|
||||
'distance-to-parent-150',
|
||||
'distance-to-parent-100',
|
||||
'distance-to-parent-050',
|
||||
'distance-to-parent-025',
|
||||
'distance-to-parent-000',
|
||||
'angle-to-parent-360',
|
||||
'angle-to-parent-180',
|
||||
'angle-to-parent-090',
|
||||
'angle-to-parent-045',
|
||||
'angle-to-parent-000',
|
||||
'data-mining',
|
||||
'initial-definition',
|
||||
'next-phase-event',
|
||||
'testing-environment',
|
||||
'production-environment',
|
||||
'task-manager',
|
||||
'session-based-data',
|
||||
'session-independent-data',
|
||||
'session-reference',
|
||||
'dashboard',
|
||||
'toggle-auto-scale-manual',
|
||||
'toggle-auto-scale-auto-min-max',
|
||||
'toggle-auto-scale-auto-max',
|
||||
'toggle-auto-scale-auto-min',
|
||||
'toggle-panel-off',
|
||||
'toggle-auto-time-scale-auto-min',
|
||||
'toggle-auto-time-scale-auto-max',
|
||||
'toggle-auto-time-scale-auto-min-max',
|
||||
'toggle-auto-time-scale-manual',
|
||||
'mouse-pointer',
|
||||
'mouse-left-click',
|
||||
'mouse-right-click',
|
||||
'mouse-wheel-up',
|
||||
'mouse-wheel-down',
|
||||
'mouse-wheel-click',
|
||||
'key-alt',
|
||||
'key-shift',
|
||||
'key-ctrl',
|
||||
'hand-drag',
|
||||
'key-down',
|
||||
'key-left',
|
||||
'key-right',
|
||||
'key-up',
|
||||
'master-script',
|
||||
'scripts-library',
|
||||
'super-action',
|
||||
'super-scripts',
|
||||
'template-script',
|
||||
'template-structure',
|
||||
'template-target',
|
||||
'delink',
|
||||
'detach',
|
||||
'help',
|
||||
'key-a',
|
||||
'key-m',
|
||||
'key-r',
|
||||
'arrangement-horizontal-top',
|
||||
'arrangement-convex',
|
||||
'arrangement-horizontal-bottom',
|
||||
'arrangement-vertical-right',
|
||||
'arrangement-vertical-left',
|
||||
'arrangement-concave',
|
||||
'move-to-phase-event',
|
||||
'open-execution',
|
||||
'move-order',
|
||||
'market-order',
|
||||
'limit-order',
|
||||
'execution-algorithm',
|
||||
'cancel-order',
|
||||
'limit-sell-order',
|
||||
'close-execution',
|
||||
'market-sell-order',
|
||||
'limit-buy-order',
|
||||
'market-buy-order'
|
||||
]
|
||||
function loadIconCollection(callBack) {
|
||||
|
||||
for (let i = 0; i < iconsNames.length; i++) {
|
||||
let name = iconsNames[i]
|
||||
loadImage(name)
|
||||
}
|
||||
callServer(undefined, 'ImagesNames', onResponse)
|
||||
|
||||
function loadImage(name) {
|
||||
const PATH = 'Images/Icons/style-01/'
|
||||
let image = new Image()
|
||||
image.onload = onImageLoad
|
||||
image.fileName = name
|
||||
|
||||
function onImageLoad() {
|
||||
image.canDrawIcon = true
|
||||
function onResponse(err, data) {
|
||||
if (err.result !== GLOBAL.DEFAULT_OK_RESPONSE.result) {
|
||||
console.log('Failed to Fetch Image Names from the Backend')
|
||||
return
|
||||
}
|
||||
|
||||
let imageNames = JSON.parse(data)
|
||||
let imageLoadedCounter = 0
|
||||
|
||||
for (let i = 0; i < imageNames.length; i++) {
|
||||
let name = imageNames[i]
|
||||
loadImage(name)
|
||||
}
|
||||
|
||||
function loadImage(name) {
|
||||
imageLoadedCounter++
|
||||
const PATH = 'Images/Icons/style-01/'
|
||||
let image = new Image()
|
||||
image.onload = onImageLoad
|
||||
image.fileName = name
|
||||
|
||||
function onImageLoad() {
|
||||
image.canDrawIcon = true
|
||||
}
|
||||
image.src = PATH + name
|
||||
let key = name.substring(0, name.length - 4)
|
||||
thisObject.iconCollection.set(key, image)
|
||||
|
||||
if (imageLoadedCounter === imageNames.length) {
|
||||
callBack()
|
||||
}
|
||||
}
|
||||
image.src = PATH + name + '.png'
|
||||
thisObject.iconCollection.set(name, image)
|
||||
}
|
||||
}
|
||||
|
||||
function physics() {
|
||||
if (thisObject.workspace === undefined) { return }
|
||||
thisObject.workspace.physics()
|
||||
}
|
||||
|
||||
@@ -330,13 +100,12 @@ function newDesignSpace() {
|
||||
}
|
||||
|
||||
function getContainer(point) {
|
||||
|
||||
|
||||
}
|
||||
|
||||
function draw() {
|
||||
if (thisObject.workspace === undefined) { return }
|
||||
if (canWeDraw === false) { return }
|
||||
if (thisObject.workspace !== undefined) {
|
||||
thisObject.workspace.draw()
|
||||
}
|
||||
thisObject.workspace.draw()
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user