mirror of
https://github.com/publiclab/image-sequencer.git
synced 2025-12-13 20:00:05 +01:00
34 lines
1.1 KiB
JavaScript
34 lines
1.1 KiB
JavaScript
function AddStep(ref, image, name, o) {
|
|
|
|
function addStep(image, name, o_) {
|
|
ref.log('\x1b[36m%s\x1b[0m','adding step \"' + name + '\" to \"' + image + '\".');
|
|
|
|
var o = ref.copy(o_);
|
|
o.id = ref.options.sequencerCounter++; //Gives a Unique ID to each step
|
|
o.name = o_.name || name;
|
|
o.selector = o_.selector || 'ismod-' + name;
|
|
o.container = o_.container || ref.options.selector;
|
|
o.image = image;
|
|
|
|
var module = ref.modules[name].call(ref.images,o);
|
|
ref.images[image].steps.push(module);
|
|
|
|
|
|
function defaultSetupModule() {
|
|
if (ref.options.ui && ref.options.ui!="none") module.options.ui = ref.options.ui({
|
|
selector: o.selector,
|
|
title: module.options.title,
|
|
id: o.id
|
|
});
|
|
}
|
|
if (module.hasOwnProperty('setup')) module.setup(); // add a default UI, unless the module has one specified
|
|
else defaultSetupModule.apply(module); // run default setup() in scope of module (is this right?)
|
|
|
|
// tell the UI that a step has been added.
|
|
return true;
|
|
}
|
|
|
|
addStep(image, name, o);
|
|
}
|
|
module.exports = AddStep;
|