this.key('ctrl+alt+shift+f', function () {
$this.fixDriftedLinks();
});
-
this.key('ctrl+a', function () {
$this.selectAllExceptLocked();
return false;
});
-
this.key('ctrl+c', function () {
$this.copy();
return false;
});
+ this.key('ctrl+o', function () {
+ $this.locks.lockSelection();
+ return false;
+ });
this.key('ctrl+x', function () {
$this.cut();
return false;
$.contextMenu({
- selector: '#linkeditor-canvas,.link,#linkeditor-panel-layers, #linkeditor-panel-layers label',
- events: {
+ selector: '#linkeditor-canvas,.link,#linkeditor-panel-layers, #linkeditor-panel-layers label', events: {
show: function (e) {
$this.contextMenuPosition = {x: $this.linkeditor.mx, y: $this.linkeditor.my};
- },
- preShow: function (e) {
+ }, preShow: function (e) {
if ($(e).is('.link:not(.selected)')) {
$this.deselectAllLinks();
$this.selectLink(e);
}
}
},
- },
- build: function ($triggerElement, e) {
+ }, build: function ($triggerElement, e) {
var res = {
callback: function () {
res.items = {
'select_all': {
- isHtmlName: true,
- name: TRANSLATIONS.select_all + ' <kbd>Ctrl+A</kbd>',
- callback: function () {
+ isHtmlName: true, name: TRANSLATIONS.select_all + ' <kbd>Ctrl+A</kbd>', callback: function () {
$this.selectAllExceptLocked();
},
}
};
if (hasSelection && !multiple) {
res.items = $.extend(res.items, {
- 'sep_link': '---------',
- 'copy_link_id': {
- isHtmlName: true,
- name: TRANSLATIONS.copy_link_id,
- callback: function () {
+ 'sep_link': '---------', 'copy_link_id': {
+ isHtmlName: true, name: TRANSLATIONS.copy_link_id, callback: function () {
navigator.clipboard.writeText(selection.attr('fb-uid'));
},
}
if (CAN_CONTAIN_LINKS[parseInt($(selection).attr('fb-type'))] !== undefined) {
res.items.image_link = {
isHtmlName: true,
- name: TRANSLATIONS.edit_image_link + ' <kbd>Ctrl+L</kbd>', callback: function () {
+ name: TRANSLATIONS.edit_image_link + ' <kbd>Ctrl+L</kbd>',
+ callback: function () {
$this.openImageLink();
}
};
if (hasSelection) {
res.items.sep_lock = '---------';
res.items.lock = {
- isHtmlName: true,
- name: TRANSLATIONS.lock + ' <kbd>Ctrl+L</kbd>',
- callback: function () {
+ isHtmlName: true, name: TRANSLATIONS.lock + ' <kbd>Ctrl+O</kbd>', callback: function () {
$this.locks.lockSelection();
},
};
res.items.sep_clipboard = '---------';
if (hasSelection) {
res.items.copy_to_clipboad = {
- isHtmlName: true,
- name: TRANSLATIONS.copy + ' <kbd>Ctrl+C</kbd>',
- callback: function () {
+ isHtmlName: true, name: TRANSLATIONS.copy + ' <kbd>Ctrl+C</kbd>', callback: function () {
$this.copy();
},
};
res.items.cut_to_clipboad = {
- isHtmlName: true,
- name: TRANSLATIONS.cut + ' <kbd>Ctrl+X</kbd>',
- callback: function () {
+ isHtmlName: true, name: TRANSLATIONS.cut + ' <kbd>Ctrl+X</kbd>', callback: function () {
$this.cut();
},
};
}
if (hasClipboard) {
res.items.paste_here = {
- isHtmlName: true,
- name: TRANSLATIONS.paste_here,
- callback: function () {
+ isHtmlName: true, name: TRANSLATIONS.paste_here, callback: function () {
$this.paste($this.contextMenuPosition);
},
};
}
if (hasSelection && !multiple) {
res.items = $.extend(res.items, {
- 'sep_extends': '---------',
- 'cover_1': {
- isHtmlName: true,
- name: TRANSLATIONS.cover_page_1,
- callback: function () {
+ 'sep_extends': '---------', 'cover_1': {
+ isHtmlName: true, name: TRANSLATIONS.cover_page_1, callback: function () {
$this.coverPage(1, false);
},
- },
- 'cover_0': {
- isHtmlName: true,
- name: TRANSLATIONS.cover_page_0,
- callback: function () {
+ }, 'cover_0': {
+ isHtmlName: true, name: TRANSLATIONS.cover_page_0, callback: function () {
$this.coverPage(0, false);
},
},
if (!$this.linkeditor.single) {
res.items = $.extend(res.items, {
'cover_double_1': {
- isHtmlName: true,
- name: TRANSLATIONS.cover_doublepage_1,
- callback: function () {
+ isHtmlName: true, name: TRANSLATIONS.cover_doublepage_1, callback: function () {
$this.coverPage(1, true);
},
- },
- 'cover_double_0': {
- isHtmlName: true,
- name: TRANSLATIONS.cover_doublepage_0,
- callback: function () {
+ }, 'cover_double_0': {
+ isHtmlName: true, name: TRANSLATIONS.cover_doublepage_0, callback: function () {
$this.coverPage(0, true);
},
},
}
if (hasSelection) {
res.items = $.extend(res.items, {
- 'sep0': '---------',
- "delete": {
+ 'sep0': '---------', "delete": {
isHtmlName: true,
name: (multiple ? TRANSLATIONS.delete_selection : TRANSLATIONS.delete_link) + ' <kbd>Del</kbd>',
callback: function () {
}
var link = this.getCurrentSelection().eq(0);
var rect = {
- x: -margin,
- y: -margin,
- width: this.linkeditor.fw + margin * 2,
- height: this.linkeditor.ph + margin * 2,
+ x: -margin, y: -margin, width: this.linkeditor.fw + margin * 2, height: this.linkeditor.ph + margin * 2,
};
if (!this.linkeditor.single && !double) {
if (parseFloat($(link).attr('fb-left')) > this.linkeditor.pw) {
$(link).attr('fb-polygon', jsonPolygon);
if (updateData) {
this.updateLinkData($(link).attr('fb-uid'), {
- left: minx,
- top: miny,
- width: w,
- height: h,
- polygon: jsonPolygon
+ left: minx, top: miny, width: w, height: h, polygon: jsonPolygon
});
}
},
let link = this.getFirstLinkInSelection();
let polygon = this.getOffsetPolygon(link);
this.movePolygonPointPos = {
- x: this.linkeditor.mx,
- y: this.linkeditor.my,
- ox: polygon[idx].x,
- oy: polygon[idx].y,
- index: idx
+ x: this.linkeditor.mx, y: this.linkeditor.my, ox: polygon[idx].x, oy: polygon[idx].y, index: idx
};
this.setDragOrigValues();
},