mirror of
https://github.com/flynx/ImageGrid.git
synced 2025-10-29 02:10:08 +00:00
experimenting with contexts...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
0019c77445
commit
9878b72a1e
@ -2947,7 +2947,20 @@ var TaskActions = actions.Actions({
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
// isolated tasks (XXX EXPERIMENTAL)
|
// contexts (XXX EXPERIMENTAL)
|
||||||
|
//
|
||||||
|
// XXX would be nice to have a context manager:
|
||||||
|
// - context id's (index? ...sparse array?)
|
||||||
|
// - manager API
|
||||||
|
// - create/remove
|
||||||
|
// - context api (feature)
|
||||||
|
// .then(..)/.catch(..)/.finally(..)
|
||||||
|
// XXX is peer stuff just a special context???
|
||||||
|
// ...feels like yes
|
||||||
|
// XXX is context manager a special case of task manager???
|
||||||
|
// XXX move to a separate feature...
|
||||||
|
|
||||||
|
get contexts(){},
|
||||||
|
|
||||||
// XXX would be nice to have an ability to partially clone the instance...
|
// XXX would be nice to have an ability to partially clone the instance...
|
||||||
// ...currently we can do a full clone and remove things we do
|
// ...currently we can do a full clone and remove things we do
|
||||||
@ -2970,7 +2983,7 @@ var TaskActions = actions.Actions({
|
|||||||
// link clone in...
|
// link clone in...
|
||||||
clone.logger = this.logger.push(['Task', clones.length].join(' '))
|
clone.logger = this.logger.push(['Task', clones.length].join(' '))
|
||||||
|
|
||||||
clones.push(clone)
|
clone.context_id = clones.push(clone)
|
||||||
return clone }],
|
return clone }],
|
||||||
// XXX this is the same as LinkedTask(..) make a meta-function...
|
// XXX this is the same as LinkedTask(..) make a meta-function...
|
||||||
IsolatedTask: ['- System/',
|
IsolatedTask: ['- System/',
|
||||||
@ -2999,22 +3012,41 @@ var TaskActions = actions.Actions({
|
|||||||
// cleared or reloaded this will retain the old data...
|
// cleared or reloaded this will retain the old data...
|
||||||
//
|
//
|
||||||
// XXX should this be a prop -- .linked???
|
// XXX should this be a prop -- .linked???
|
||||||
|
// XXX would be a good idea to store all the links in once place...
|
||||||
__linked: null,
|
__linked: null,
|
||||||
get linked(){
|
get linked(){
|
||||||
return (this.__linked = this.__linked || []) },
|
return (this.__linked = this.__linked || []) },
|
||||||
link: ['- System/',
|
link: ['- System/',
|
||||||
function(){
|
function(title){
|
||||||
var that = this
|
var that = this
|
||||||
var links = this.linked
|
var links = this.linked
|
||||||
var link = ImageGridFeatures.setup([...this.features.input, '-ui'])
|
|
||||||
|
|
||||||
|
// get link already created...
|
||||||
|
var link = this.linked
|
||||||
|
.filter(function(l){
|
||||||
|
return title ?
|
||||||
|
l.title == title
|
||||||
|
: (l.data === that.data
|
||||||
|
&& l.images === that.images) })
|
||||||
|
.last()
|
||||||
|
if(link){
|
||||||
|
return link }
|
||||||
|
|
||||||
|
// create a link...
|
||||||
|
link = ImageGridFeatures.setup([...this.features.input, '-ui'])
|
||||||
return Object.assign(
|
return Object.assign(
|
||||||
link,
|
link,
|
||||||
this,
|
this,
|
||||||
{parent: this})
|
{
|
||||||
|
// XXX revise...
|
||||||
|
parent: this,
|
||||||
|
title: title,
|
||||||
|
// XXX change this when data/images changes...
|
||||||
|
type: 'link',
|
||||||
|
})
|
||||||
.run(function(){
|
.run(function(){
|
||||||
this.logger = that.logger.push(['Task', links.length].join(' '))
|
this.logger = that.logger.push(['Task', links.length].join(' '))
|
||||||
links.push(this) }) }],
|
this.context_id = links.push(this) }) }],
|
||||||
// XXX this should delete the clone when done...
|
// XXX this should delete the clone when done...
|
||||||
LinkedTask: ['- System/',
|
LinkedTask: ['- System/',
|
||||||
function(){}],
|
function(){}],
|
||||||
|
|||||||
6
Viewer/package-lock.json
generated
6
Viewer/package-lock.json
generated
@ -1211,9 +1211,9 @@
|
|||||||
"integrity": "sha512-7gSU0Qg4E0rnCPuITu6nJzgr4N73tFN57CISVrQjB+EglixfDI5SwOVRgPtG0EBOgtE8IL4O7fmq/UV87OUYyA=="
|
"integrity": "sha512-7gSU0Qg4E0rnCPuITu6nJzgr4N73tFN57CISVrQjB+EglixfDI5SwOVRgPtG0EBOgtE8IL4O7fmq/UV87OUYyA=="
|
||||||
},
|
},
|
||||||
"ig-types": {
|
"ig-types": {
|
||||||
"version": "6.0.4",
|
"version": "6.0.6",
|
||||||
"resolved": "https://registry.npmjs.org/ig-types/-/ig-types-6.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/ig-types/-/ig-types-6.0.6.tgz",
|
||||||
"integrity": "sha512-6127GzvMz1Ow8Qizbs0vEvMdYsOJR9HVs0By8dQJIYnX2RRAviUStI+E/wwEH/OxHZpkmFHxwZ6xvmC0S7KP3w==",
|
"integrity": "sha512-TOW58/yBQ7YqFukFT5K2Qd7u9k1CYgoQXXreS6u7pw9ttcWJLC3hJUTcLWsHTPKm3vNbFJ0NVI1o1U3SQlUu5w==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"ig-object": "^5.4.12",
|
"ig-object": "^5.4.12",
|
||||||
"object-run": "^1.0.1"
|
"object-run": "^1.0.1"
|
||||||
|
|||||||
@ -34,7 +34,7 @@
|
|||||||
"ig-argv": "^2.16.3",
|
"ig-argv": "^2.16.3",
|
||||||
"ig-features": "^3.4.5",
|
"ig-features": "^3.4.5",
|
||||||
"ig-object": "^5.4.14",
|
"ig-object": "^5.4.14",
|
||||||
"ig-types": "^6.0.4",
|
"ig-types": "^6.0.6",
|
||||||
"json5": "^2.1.3",
|
"json5": "^2.1.3",
|
||||||
"object-run": "^1.0.1",
|
"object-run": "^1.0.1",
|
||||||
"requirejs": "^2.3.6",
|
"requirejs": "^2.3.6",
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user