Commit b1781bcc authored by Alexander.Trofimov's avatar Alexander.Trofimov Committed by Alexander.Trofimov

Выставление активного листа после скрытия теперь в модели (правка проблем с...

Выставление активного листа после скрытия теперь в модели (правка проблем с undo/redo со скрытием листов)
Баг http://bugzserver/show_bug.cgi?id=20509

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@49911 954022d7-b5bf-4e40-9824-e11837661b57
parent c1030819
......@@ -1850,27 +1850,6 @@ var ASC_DOCS_API_USE_EMBEDDED_FONTS = "@@ASC_DOCS_API_USE_EMBEDDED_FONTS";
var hideWorksheetCallback = function (res) {
if (res) {
t.wbModel.getWorksheet(activeWorksheet).setHidden(true);
// Покажем следующий лист или предыдущий (если больше нет)
var i, ws;
for (i = activeWorksheet + 1; i < countWorksheets; ++i) {
ws = model.getWorksheet(i);
if (false === ws.getHidden()) {
t.asc_showWorksheet (i);
// Посылаем callback об изменении списка листов
t.sheetsChanged();
return;
}
}
// Не нашли справа, ищем слева от текущего
for (i = activeWorksheet - 1; i >= 0; --i) {
ws = model.getWorksheet(i);
if (false === ws.getHidden()) {
t.asc_showWorksheet (i);
// Посылаем callback об изменении списка листов
t.sheetsChanged();
return;
}
}
}
};
......
......@@ -2533,21 +2533,21 @@ Woorksheet.prototype.setHidden=function(hidden){
{
//выбираем новый активный
var activeWorksheet = this.getIndex();
var countWorksheets = this.workbook.getWorksheetCount()
for (var i = activeWorksheet + 1; i < countWorksheets; ++i) {
var ws = this.workbook.getWorksheet(i);
if (false === ws.getHidden())
{
this.workbook.setActive(i);
var countWorksheets = this.workbook.getWorksheetCount();
// Покажем следующий лист или предыдущий (если больше нет)
var i, ws;
for (i = activeWorksheet + 1; i < countWorksheets; ++i) {
ws = this.workbook.getWorksheet(i);
if (false === ws.getHidden()) {
this.workbook.handlers.trigger("undoRedoHideSheet", i);
return;
}
}
// Не нашли справа, ищем слева от текущего
for (var i = activeWorksheet - 1; i >= 0; --i) {
var ws = this.workbook.getWorksheet(i);
if (false === ws.getHidden())
{
this.workbook.setActive(i);
for (i = activeWorksheet - 1; i >= 0; --i) {
ws = this.workbook.getWorksheet(i);
if (false === ws.getHidden()) {
this.workbook.handlers.trigger("undoRedoHideSheet", i);
return;
}
}
......
......@@ -319,6 +319,11 @@
}
}
});
this.model.handlers.add("undoRedoHideSheet", function (sheetId) {
self.showWorksheet(sheetId);
// Посылаем callback об изменении списка листов
self.handlers.trigger("asc_onSheetsChanged");
});
this.input
......
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