Commit dd030067 authored by Igor.Zotov's avatar Igor.Zotov

http://bugzserver/show_bug.cgi?id=27766 - [CoEdit] Ошибка в консоли и...

http://bugzserver/show_bug.cgi?id=27766 - [CoEdit] Ошибка в консоли и повреждение файла при скрытии данных форматированной таблицы после удаления столбца со сдвигом и применения undo

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@60050 954022d7-b5bf-4e40-9824-e11837661b57
parent 9e21cf7a
...@@ -1392,8 +1392,15 @@ var gUndoInsDelCellsFlag = true; ...@@ -1392,8 +1392,15 @@ var gUndoInsDelCellsFlag = true;
for(var j = 0; j < aWs.TableParts.length; j++) for(var j = 0; j < aWs.TableParts.length; j++)
{ {
if(this.changeFilters.TableParts[i].DisplayName == aWs.TableParts[j].DisplayName) if(this.changeFilters.TableParts[i].DisplayName == aWs.TableParts[j].DisplayName)
{ {
if(aWs.TableParts[j].AutoFilter != null)
this._addButtonAF({result: aWs.TableParts[j].result,isVis: false});
aWs.TableParts[j] = this.changeFilters.TableParts[i].filter; aWs.TableParts[j] = this.changeFilters.TableParts[i].filter;
if(aWs.TableParts[j].AutoFilter != null)
this._addButtonAF({result: aWs.TableParts[j].result,isVis: true});
break; break;
} }
} }
...@@ -2077,7 +2084,8 @@ var gUndoInsDelCellsFlag = true; ...@@ -2077,7 +2084,8 @@ var gUndoInsDelCellsFlag = true;
{ {
if(cloneData.newFilterRef && cloneData.newFilterRef.isEqual(aWs.TableParts[l].Ref)) if(cloneData.newFilterRef && cloneData.newFilterRef.isEqual(aWs.TableParts[l].Ref))
{ {
if(aWs.TableParts[l].AutoFilter != null) var isIntersectionTableParts = this._isIntersectionTableParts(aWs.TableParts[l].Ref);
if(aWs.TableParts[l].AutoFilter != null && !isIntersectionTableParts)
this._addButtonAF({result: aWs.TableParts[l].result,isVis: false}); this._addButtonAF({result: aWs.TableParts[l].result,isVis: false});
aWs.TableParts[l] = cloneData.oldFilter; aWs.TableParts[l] = cloneData.oldFilter;
...@@ -2557,6 +2565,22 @@ var gUndoInsDelCellsFlag = true; ...@@ -2557,6 +2565,22 @@ var gUndoInsDelCellsFlag = true;
return false; return false;
}, },
_isIntersectionTableParts: function(range)
{
var ws = this.worksheet;
var aWs = this._getCurrentWS();
var tableParts = aWs.TableParts;
var tablePart;
for(var i = 0; i < tableParts.length; i++)
{
tablePart = tableParts[i];
if(tablePart.Ref.intersection(range))
return true;
}
return false;
},
//при закрытии диалогового окна числового фильтра //при закрытии диалогового окна числового фильтра
_applyDigitalFilter: function(ar, autoFiltersObject) { _applyDigitalFilter: function(ar, autoFiltersObject) {
var ws = this.worksheet; var ws = this.worksheet;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment