return {
name: createParams.name,
params: {
- fragment: {type: 'context', name: 'fragment'},
+ fragment: {type: 'context', name: 'fragment'}
},
getState: function(params) {
var state = {
- label: this.config.label
+ label: createParams.to.name
},
f = params.fragment,
description;
toSwitch = toSwitch.getParent(createParams.from);
}
- description = 'Switch to ' + createParams.to.name;
+ description = gettext('Switch to') + ' ' + createParams.to.name;
return _.extend(state, {
- allowed: !!toSwitch,
+ allowed: !!toSwitch || alreadyInTarget,
toggled: alreadyInTarget,
description: description,
execute: alreadyInTarget ? function() {} : function(callback) {
return f.document.createFragment(f.CaretFragment, {node: f.document.getNodeByPath(textNodePath), offset: f.offset});
}, {
metadata: {
- description: description
+ description: description,
+ fragment: params.fragment
},
success: callback
});
};
var headerAction = createSwitchAction({name: 'switchToHeader', from: {tagName: 'div', klass: 'p'}, to: {tagName: 'header', klass: '', name: gettext('header')}}),
- paragraphAction = createSwitchAction({name: 'switchToParagraph', from: {tagName: 'header'}, to: {tagName: 'div', klass: 'p', name: gettext('paragraf')}});
+ paragraphAction = createSwitchAction({name: 'switchToParagraph', from: {tagName: 'header'}, to: {tagName: 'div', klass: 'p', name: gettext('paragraph')}}),
+ imageAction = createSwitchAction({name: 'switchToImage', from: {}, to: {tagName: 'div', klass: 'img', name: gettext('image')}}),
+ videoAction = createSwitchAction({name: 'switchToVideo', from: {}, to: {tagName: 'div', klass: 'video', name: gettext('video')}});
return {
- actions: [headerAction, paragraphAction],
+ actions: [headerAction, paragraphAction, imageAction, videoAction],
canvasActionHandler: {
- handles: [headerAction, paragraphAction],
+ handles: [headerAction, paragraphAction, imageAction, videoAction]
// handle: function(canvas, action, ret) {
// var params = {},
// f;