[SSE mobile] Correct lock shape

This commit is contained in:
SergeyEzhin 2021-12-01 19:38:02 +04:00
parent 96aaa1fb69
commit f7aeef5f23
4 changed files with 27 additions and 13 deletions

View file

@ -17,6 +17,7 @@ const ToolbarController = inject('storeAppOptions', 'users', 'storeSpreadsheetIn
const storeFocusObjects = props.storeFocusObjects;
const focusOn = storeFocusObjects.focusOn;
const isObjectLocked = storeFocusObjects.isLocked;
const isShapeLocked = storeFocusObjects.isLockedShape;
const isEditCell = storeFocusObjects.isEditCell;
const editFormulaMode = storeFocusObjects.editFormulaMode;
@ -159,6 +160,7 @@ const ToolbarController = inject('storeAppOptions', 'users', 'storeSpreadsheetIn
isDisconnected={isDisconnected}
wsProps={wsProps}
focusOn={focusOn}
isShapeLocked={isShapeLocked}
/>
)
}));

View file

@ -15,6 +15,8 @@ export class storeFocusObjects {
imageObject: computed,
chartObject: computed,
isLocked: observable,
isLockedText: observable,
isLockedShape: observable,
setIsLocked: action,
editFormulaMode: observable,
setEditFormulaMode: action,
@ -89,9 +91,14 @@ export class storeFocusObjects {
}
isLocked = false;
isLockedShape = false;
isLockedText = false;
setIsLocked(info) {
let islocked = false;
let isLocked = false,
isLockedShape = false,
isLockedText = false;
switch (info.asc_getSelectionType()) {
case Asc.c_oAscSelectionType.RangeChart:
case Asc.c_oAscSelectionType.RangeImage:
@ -101,15 +108,19 @@ export class storeFocusObjects {
const objects = Common.EditorApi.get().asc_getGraphicObjectProps();
for ( let i in objects ) {
if ( objects[i].asc_getObjectType() == Asc.c_oAscTypeSelectElement.Image ) {
if ((islocked = objects[i].asc_getObjectValue().asc_getLocked()))
break;
isLocked = objects[i].asc_getObjectValue().asc_getLocked();
isLockedShape = objects[i].asc_getObjectValue().asc_getProtectionLocked();
isLockedText = objects[i].asc_getObjectValue().asc_getProtectionLockText();
break;
}
}
break;
default:
islocked = info.asc_getLocked();
this.isLocked = info.asc_getLocked();
}
this.isLocked = islocked;
this.isLocked = isLocked;
this.isLockedShape = isLockedShape;
this.isLockedText = isLockedText;
}
editFormulaMode = false;

View file

@ -7,6 +7,7 @@ const ToolbarView = props => {
const isDisconnected = props.isDisconnected;
const wsProps = props.wsProps;
const focusOn = props.focusOn;
const isShapeLocked = props.isShapeLocked;
const undo_box = props.isEdit && EditorUIController.toolbarOptions ? EditorUIController.toolbarOptions.getUndoRedo({
disabledUndo: !props.isCanUndo || isDisconnected,
disabledRedo: !props.isCanRedo || isDisconnected,
@ -30,6 +31,7 @@ const ToolbarView = props => {
disabled: props.disabledEditControls || props.disabledControls || isDisconnected,
wsProps,
focusOn,
isShapeLocked,
onEditClick: () => props.openOptions('edit'),
onAddClick: () => props.openOptions('add')
})}

View file

@ -333,7 +333,6 @@ const EditTabs = props => {
const { t } = useTranslation();
const _t = t('View.Edit', {returnObjects: true});
const store = props.storeFocusObjects;
const wsLock = props.wsLock;
const wsProps = props.wsProps;
const settings = !store.focusOn ? [] : (store.focusOn === 'obj' ? store.objects : store.selections);
let editors = [];
@ -351,14 +350,14 @@ const EditTabs = props => {
component: <EditCellController />
})
}
if (!store.isLockedShape && settings.indexOf('shape') > -1) {
editors.push({
caption: _t.textShape,
id: 'edit-shape',
component: <EditShapeController />
})
}
if(!wsProps.Objects) {
if (settings.indexOf('shape') > -1) {
editors.push({
caption: _t.textShape,
id: 'edit-shape',
component: <EditShapeController />
})
}
if (settings.indexOf('image') > -1) {
editors.push({
caption: _t.textImage,