var addedActions = [],
contextParams = {},
- contextDefer = {},
- duringClick = false,
document, canvas;
var view = {
var action = sandbox.createAction(actionDescription.actionName, actionDescription.actionConfig),
view;
addedActions.push(action);
- view = actionView.create(action);
+ view = actionView.create(action, sandbox.getTutorialItem(action.definition.name));
_.pairs(contextParams).forEach(function(pair) {
var name = pair[0],
});
group.append(view.dom);
- view.on('actionExecuted', function(action, ret) {
+ action.on('actionExecuted', function(ret) {
sandbox.publish('actionExecuted', action, ret);
- duringClick = false;
- _.pairs(contextDefer).forEach(function(pair) {
- var what = pair[0],
- deferred = pair[1];
- if(deferred) {
- refreshContextParam(what);
- }
- });
- });
- view.on('mousedown', function() {
- duringClick = true;
});
view.on('hover', function() {
var setContextParam = function(what, ctx) {
contextParams[what] = ctx;
- if(duringClick) {
- contextDefer[what] = true;
- } else {
- refreshContextParam(what);
- }
- };
-
- var refreshContextParam = function(what) {
addedActions.forEach(function(action) {
action.updateContextParam(what, contextParams[what]);
});
document.on('operationEnd', function() {
setContextParam('document', document);
});
+ setContextParam('document', document);
}
setContextParam('fragment', fragment);