[PE SSE] Add disables for smart arts (for buttons of change z-indexes, for context menu items)

This commit is contained in:
JuliaSvinareva 2021-11-09 21:22:00 +03:00
parent 3cbb1016b3
commit 31b58fd67d
6 changed files with 108 additions and 64 deletions

View file

@ -813,6 +813,11 @@ define([
if (this._state.in_smartart_internal !== in_smartart_internal) {
this.toolbar.lockToolbar(PE.enumLock.inSmartartInternal, in_smartart_internal, {array: me.toolbar.paragraphControls});
this._state.in_smartart_internal = in_smartart_internal;
this.toolbar.mnuArrangeFront.setDisabled(in_smartart_internal);
this.toolbar.mnuArrangeBack.setDisabled(in_smartart_internal);
this.toolbar.mnuArrangeForward.setDisabled(in_smartart_internal);
this.toolbar.mnuArrangeBackward.setDisabled(in_smartart_internal);
}
},

View file

@ -2654,56 +2654,64 @@ define([
Common.component.Analytics.trackEvent('DocumentHolder', 'Ungroup Image');
});
var mnuArrangeFront = new Common.UI.MenuItem({
caption : this.textArrangeFront,
iconCls : 'menu__icon arrange-front'
}).on('click', function(item) {
if (me.api) {
me.api.shapes_bringToFront();
}
me.fireEvent('editcomplete', me);
Common.component.Analytics.trackEvent('DocumentHolder', 'Bring To Front');
});
var mnuArrangeBack = new Common.UI.MenuItem({
caption : this.textArrangeBack,
iconCls : 'menu__icon arrange-back'
}).on('click', function(item) {
if (me.api) {
me.api.shapes_bringToBack();
}
me.fireEvent('editcomplete', me);
Common.component.Analytics.trackEvent('DocumentHolder', 'Bring To Back');
});
var mnuArrangeForward = new Common.UI.MenuItem({
caption : this.textArrangeForward,
iconCls : 'menu__icon arrange-forward'
}).on('click', function(item) {
if (me.api) {
me.api.shapes_bringForward();
}
me.fireEvent('editcomplete', me);
Common.component.Analytics.trackEvent('DocumentHolder', 'Send Forward');
});
var mnuArrangeBackward = new Common.UI.MenuItem({
caption : this.textArrangeBackward,
iconCls : 'menu__icon arrange-backward'
}).on('click', function(item) {
if (me.api) {
me.api.shapes_bringBackward();
}
me.fireEvent('editcomplete', me);
Common.component.Analytics.trackEvent('DocumentHolder', 'Send Backward');
});
var menuImgShapeArrange = new Common.UI.MenuItem({
caption : me.txtArrange,
menu : new Common.UI.Menu({
cls: 'shifted-right',
menuAlign: 'tl-tr',
items: [
new Common.UI.MenuItem({
caption : this.textArrangeFront,
iconCls : 'menu__icon arrange-front'
}).on('click', function(item) {
if (me.api) {
me.api.shapes_bringToFront();
}
me.fireEvent('editcomplete', me);
Common.component.Analytics.trackEvent('DocumentHolder', 'Bring To Front');
}),
new Common.UI.MenuItem({
caption : this.textArrangeBack,
iconCls : 'menu__icon arrange-back'
}).on('click', function(item) {
if (me.api) {
me.api.shapes_bringToBack();
}
me.fireEvent('editcomplete', me);
Common.component.Analytics.trackEvent('DocumentHolder', 'Bring To Back');
}),
new Common.UI.MenuItem({
caption : this.textArrangeForward,
iconCls : 'menu__icon arrange-forward'
}).on('click', function(item) {
if (me.api) {
me.api.shapes_bringForward();
}
me.fireEvent('editcomplete', me);
Common.component.Analytics.trackEvent('DocumentHolder', 'Send Forward');
}),
new Common.UI.MenuItem({
caption : this.textArrangeBackward,
iconCls : 'menu__icon arrange-backward'
}).on('click', function(item) {
if (me.api) {
me.api.shapes_bringBackward();
}
me.fireEvent('editcomplete', me);
Common.component.Analytics.trackEvent('DocumentHolder', 'Send Backward');
}),
mnuArrangeFront,
mnuArrangeBack,
mnuArrangeForward,
mnuArrangeBackward,
{caption: '--'},
mnuGroupImg,
mnuUnGroupImg
@ -3503,11 +3511,17 @@ define([
shapedisabled = (value.shapeProps!==undefined && value.shapeProps.locked),
chartdisabled = (value.chartProps!==undefined && value.chartProps.locked),
disabled = imgdisabled || shapedisabled || chartdisabled || (value.slideProps!==undefined && value.slideProps.locked),
pluginGuid = (value.imgProps) ? value.imgProps.value.asc_getPluginGuid() : null;
pluginGuid = (value.imgProps) ? value.imgProps.value.asc_getPluginGuid() : null,
inSmartartInternal = value.shapeProps && value.shapeProps.value.get_FromSmartArtInternal();
mnuArrangeFront.setDisabled(inSmartartInternal);
mnuArrangeBack.setDisabled(inSmartartInternal);
mnuArrangeForward.setDisabled(inSmartartInternal);
mnuArrangeBackward.setDisabled(inSmartartInternal);
menuImgShapeRotate.setVisible(_.isUndefined(value.chartProps) && (pluginGuid===null || pluginGuid===undefined));
if (menuImgShapeRotate.isVisible())
menuImgShapeRotate.setDisabled(disabled);
menuImgShapeRotate.setDisabled(disabled || (value.shapeProps && value.shapeProps.value.get_FromSmartArt()));
// image properties
menuImgOriginalSize.setVisible(isimage);

View file

@ -597,7 +597,7 @@ define([
id: 'id-toolbar-btn-decoffset',
cls: 'btn-toolbar',
iconCls: 'toolbar__icon btn-decoffset',
lock: [_set.decIndentLock, _set.slideDeleted, _set.paragraphLock, _set.lostConnect, _set.noSlides, _set.noParagraphSelected, _set.inSmartart],
lock: [_set.decIndentLock, _set.slideDeleted, _set.paragraphLock, _set.lostConnect, _set.noSlides, _set.noParagraphSelected, _set.inSmartart, _set.inSmartartInternal],
dataHint: '1',
dataHintDirection: 'top'
});
@ -607,7 +607,7 @@ define([
id: 'id-toolbar-btn-incoffset',
cls: 'btn-toolbar',
iconCls: 'toolbar__icon btn-incoffset',
lock: [_set.incIndentLock, _set.slideDeleted, _set.paragraphLock, _set.lostConnect, _set.noSlides, _set.noParagraphSelected, _set.inSmartart],
lock: [_set.incIndentLock, _set.slideDeleted, _set.paragraphLock, _set.lostConnect, _set.noSlides, _set.noParagraphSelected, _set.inSmartart, _set.inSmartartInternal],
dataHint: '1',
dataHintDirection: 'top'
});
@ -925,26 +925,26 @@ define([
lock: [_set.slideDeleted, _set.lostConnect, _set.noSlides, _set.noObjectSelected, _set.disableOnStart],
menu: new Common.UI.Menu({
items: [
{
me.mnuArrangeFront = new Common.UI.MenuItem({
caption: me.textArrangeFront,
iconCls: 'menu__icon arrange-front',
value: 1
},
{
}),
me.mnuArrangeBack = new Common.UI.MenuItem({
caption: me.textArrangeBack,
iconCls: 'menu__icon arrange-back',
value: 2
},
{
}),
me.mnuArrangeForward = new Common.UI.MenuItem({
caption: me.textArrangeForward,
iconCls: 'menu__icon arrange-forward',
value: 3
},
{
}),
me.mnuArrangeBackward = new Common.UI.MenuItem({
caption: me.textArrangeBackward,
iconCls: 'menu__icon arrange-backward',
value: 4
},
}),
{caption: '--'},
me.mnuGroupShapes = new Common.UI.MenuItem({
caption: me.txtGroup,

View file

@ -1831,7 +1831,9 @@ define([
isObjLocked = false,
commentsController = this.getApplication().getController('Common.Controllers.Comments'),
internaleditor = this.permissions.isEditMailMerge || this.permissions.isEditDiagram,
xfs = cellinfo.asc_getXfs();
xfs = cellinfo.asc_getXfs(),
isSmartArt = false,
isSmartArtInternal = false;
switch (seltype) {
case Asc.c_oAscSelectionType.RangeCells: iscellmenu = true; break;
@ -1871,6 +1873,10 @@ define([
else {
documentHolder.mnuShapeAdvanced.shapeInfo = elValue;
isshapemenu = true;
if (shapeprops.asc_getFromSmartArt())
isSmartArt = true;
if (shapeprops.asc_getFromSmartArtInternal())
isSmartArtInternal = true;
}
} else if ( elValue.asc_getChartProperties() ) {
documentHolder.mnuChartEdit.chartInfo = elValue;
@ -1888,6 +1894,11 @@ define([
}
}
documentHolder.mnuBringToFront.setDisabled(isSmartArtInternal);
documentHolder.mnuSendToBack.setDisabled(isSmartArtInternal);
documentHolder.mnuBringForward.setDisabled(isSmartArtInternal);
documentHolder.mnuSendBackward.setDisabled(isSmartArtInternal);
var cangroup = this.api.asc_canGroupGraphicsObjects();
documentHolder.mnuUnGroupImg.setDisabled(isObjLocked || !this.api.asc_canUnGroupGraphicsObjects());
documentHolder.mnuGroupImg.setDisabled(isObjLocked || !cangroup);
@ -1919,7 +1930,7 @@ define([
documentHolder.menuImageArrange.setDisabled(isObjLocked);
documentHolder.menuImgRotate.setVisible(!ischartmenu && (pluginGuid===null || pluginGuid===undefined) && !isslicermenu);
documentHolder.menuImgRotate.setDisabled(isObjLocked);
documentHolder.menuImgRotate.setDisabled(isObjLocked || isSmartArt);
documentHolder.menuImgCrop.setVisible(this.api.asc_canEditCrop());
documentHolder.menuImgCrop.setDisabled(isObjLocked);
@ -1957,8 +1968,11 @@ define([
var value = selectedObjects[i].asc_getObjectValue(),
align = value.asc_getVerticalTextAlign(),
direct = value.asc_getVert(),
listtype = this.api.asc_getCurrentListType();
listtype = this.api.asc_getCurrentListType(),
shapeProps = value ? value.asc_getShapeProperties() : null;
isObjLocked = isObjLocked || value.asc_getLocked();
isSmartArt = shapeProps ? shapeProps.asc_getFromSmartArt() : false;
isSmartArtInternal = shapeProps ? shapeProps.asc_getFromSmartArtInternal() : false;
var cls = '';
switch (align) {
case Asc.c_oAscVAlign.Top:
@ -2033,6 +2047,8 @@ define([
this.clearEquationMenu(4);
if (showMenu) this.showPopupMenu(documentHolder.textInShapeMenu, {}, event);
documentHolder.menuParagraphBullets.setDisabled(isSmartArt || isSmartArtInternal);
} else if (!this.permissions.isEditMailMerge && !this.permissions.isEditDiagram || (seltype !== Asc.c_oAscSelectionType.RangeImage && seltype !== Asc.c_oAscSelectionType.RangeShape &&
seltype !== Asc.c_oAscSelectionType.RangeChart && seltype !== Asc.c_oAscSelectionType.RangeChartText && seltype !== Asc.c_oAscSelectionType.RangeShapeText && seltype !== Asc.c_oAscSelectionType.RangeSlicer)) {
if (!documentHolder.ssMenu || !showMenu && !documentHolder.ssMenu.isVisible()) return;

View file

@ -3457,7 +3457,8 @@ define([
is_image = seltype == Asc.c_oAscSelectionType.RangeImage,
is_slicer = seltype == Asc.c_oAscSelectionType.RangeSlicer,
is_mode_2 = is_shape_text || is_shape || is_chart_text || is_chart || is_slicer,
is_objLocked = false;
is_objLocked = false,
is_smartart_internal = false;
if (!(is_mode_2 || is_image) && this._state.selection_type===seltype && this._state.coauthdisable===coauth_disable) return (seltype===Asc.c_oAscSelectionType.RangeImage);
@ -3465,8 +3466,14 @@ define([
var SelectedObjects = this.api.asc_getGraphicObjectProps();
for (var i=0; i<SelectedObjects.length; ++i)
{
if (SelectedObjects[i].asc_getObjectType() == Asc.c_oAscTypeSelectElement.Image)
if (SelectedObjects[i].asc_getObjectType() == Asc.c_oAscTypeSelectElement.Image) {
is_objLocked = is_objLocked || SelectedObjects[i].asc_getObjectValue().asc_getLocked();
var value = SelectedObjects[i].asc_getObjectValue(),
shapeProps = value ? value.asc_getShapeProperties() : null;
if (shapeProps) {
is_smartart_internal = shapeProps.asc_getFromSmartArtInternal();
}
}
}
}
@ -3498,6 +3505,7 @@ define([
toolbar.lockToolbar(SSE.enumLock.coAuthText, is_objLocked);
toolbar.lockToolbar(SSE.enumLock.coAuthText, is_objLocked && (seltype==Asc.c_oAscSelectionType.RangeChart || seltype==Asc.c_oAscSelectionType.RangeChartText), { array: [toolbar.btnInsertChart] } );
toolbar.lockToolbar(SSE.enumLock.inSmartartInternal, is_smartart_internal);
}
this._state.controlsdisabled.filters = is_image || is_mode_2 || coauth_disable;

View file

@ -104,7 +104,8 @@ define([
itemsDisabled: 'all-items-disabled',
wsLockText: 'worksheet-lock-text',
wsLockShape: 'worksheet-lock-shape',
wsLockFormat: 'worksheet-lock-format'
wsLockFormat: 'worksheet-lock-format',
inSmartartInternal: 'in-smartart-internal'
};
SSE.Views.Toolbar = Common.UI.Mixtbar.extend(_.extend({
@ -1593,7 +1594,7 @@ define([
iconCls: 'toolbar__icon btn-img-frwd',
caption: me.capImgForward,
split: true,
lock : [_set.selRange, _set.selRangeEdit, _set.lostConnect, _set.coAuth, _set.coAuthText, _set["Objects"]],
lock : [_set.selRange, _set.selRangeEdit, _set.lostConnect, _set.coAuth, _set.coAuthText, _set["Objects"], _set.inSmartartInternal],
menu: true,
dataHint: '1',
dataHintDirection: 'bottom',
@ -1603,7 +1604,7 @@ define([
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-img-bkwd',
caption: me.capImgBackward,
lock : [_set.selRange, _set.selRangeEdit, _set.lostConnect, _set.coAuth, _set.coAuthText, _set["Objects"]],
lock : [_set.selRange, _set.selRangeEdit, _set.lostConnect, _set.coAuth, _set.coAuthText, _set["Objects"], _set.inSmartartInternal],
split: true,
menu: true,
dataHint: '1',