mirror of
https://github.com/publiclab/image-sequencer.git
synced 2025-12-11 19:00:00 +01:00
* Drag to crop rebase step (#244) * 1.1.0 * 1.2.0 * added plugin Signed-off-by: tech4GT <varun.gupta1798@gmail.com> * drag to crop enabled Signed-off-by: tech4GT <varun.gupta1798@gmail.com> * fix Signed-off-by: tech4GT <varun.gupta1798@gmail.com> * improvement Signed-off-by: tech4GT <varun.gupta1798@gmail.com> * done dragToCrop Signed-off-by: tech4GT <varun.gupta1798@gmail.com> * done with updated ui Signed-off-by: tech4GT <varun.gupta1798@gmail.com> * solved bug for multiple consecutive crops Signed-off-by: tech4GT <varun.gupta1798@gmail.com> * fixed and updated Signed-off-by: tech4GT <varun.gupta1798@gmail.com> * externalized image area select code * major refactoring of crop drag and demo ui modules * work on crop module and ui refactor * completed Step drag ui refactor * revert unbuilt to rebase * built and version bump * various fixes
61 lines
1.7 KiB
JavaScript
61 lines
1.7 KiB
JavaScript
function DefaultHtmlSequencerUi(_sequencer, options) {
|
|
|
|
options = options || {};
|
|
var addStepSel = options.addStepSel = options.addStepSel || "#addStep";
|
|
var removeStepSel = options.removeStepSel = options.removeStepSel || "button.remove";
|
|
var selectStepSel = options.selectStepSel = options.selectStepSel || "#selectStep";
|
|
|
|
function onLoad() {
|
|
importStepsFromUrlHash();
|
|
}
|
|
|
|
// look up needed steps from Url Hash:
|
|
function importStepsFromUrlHash() {
|
|
var hash = getUrlHashParameter("steps");
|
|
|
|
if (hash) {
|
|
var stepsFromHash = hash.split(",");
|
|
stepsFromHash.forEach(function eachStep(step) {
|
|
_sequencer.addSteps(step);
|
|
});
|
|
_sequencer.run();
|
|
}
|
|
}
|
|
|
|
function selectNewStepUi() {
|
|
var m = $(addStepSel + " select").val();
|
|
$(addStepSel + " .info").html(_sequencer.modulesInfo(m).description);
|
|
}
|
|
|
|
function removeStepUi() {
|
|
var index = $(removeStepSel).index(this) + 1;
|
|
sequencer.removeSteps(index).run();
|
|
// remove from URL hash too
|
|
var urlHash = getUrlHashParameter("steps").split(",");
|
|
urlHash.splice(index - 1, 1);
|
|
setUrlHashParameter("steps", urlHash.join(","));
|
|
}
|
|
|
|
function addStepUi() {
|
|
if ($(addStepSel + " select").val() == "none") return;
|
|
|
|
// add to URL hash too
|
|
var hash = getUrlHashParameter("steps") || "";
|
|
if (hash != "") hash += ",";
|
|
setUrlHashParameter("steps", hash + $(addStepSel + " select").val());
|
|
|
|
var newStepName = $(addStepSel + " select").val();
|
|
_sequencer
|
|
.addSteps(newStepName, options)
|
|
.run(null);
|
|
}
|
|
|
|
return {
|
|
onLoad: onLoad,
|
|
importStepsFromUrlHash: importStepsFromUrlHash,
|
|
selectNewStepUi: selectNewStepUi,
|
|
removeStepUi: removeStepUi,
|
|
addStepUi: addStepUi
|
|
}
|
|
}
|