Commit 02b157db authored by GoshaZotov's avatar GoshaZotov

move some properties Clipboard -> clipboard.base

parent 13d18478
......@@ -75,7 +75,7 @@
asc_getOptions : function(val) { return this.options; }
};
function SpecialPasteProps()
function СSpecialPasteProps()
{
this.cellStyle = true;
this.val = true;
......@@ -96,9 +96,9 @@
this.images = true;
}
SpecialPasteProps.prototype = {
СSpecialPasteProps.prototype = {
constructor: SpecialPasteProps,
constructor: СSpecialPasteProps,
clean: function()
{
......@@ -251,16 +251,12 @@
this.copyProcessor = new CopyProcessorExcel();
this.pasteProcessor = new PasteProcessorExcel();
this.specialPasteProps = null;
this.bIsEndTransaction = false;//если нужно сделать на end_paste endTransaction
//TODO возможно стоит перенести в clipboard_base
this.pasteStart = false;//если true - осуществляется вставка. false выставляется только по полному окончанию вставки(загрузки картинок и тд)
this.specialPasteStart = false;
this.bIsEndTransaction = false;//если нужно сделать на end_paste endTransaction
this.showSpecialPasteButton = false;//нужно показывать или нет кнопку специальной вставки
this.specialPasteRange = null;//для того, чтобы показать в нужном месте иконку(кнопку) специальной вставки
return this;
}
......@@ -1372,7 +1368,7 @@
insertContent.Elements = this._convertBeforeInsertIntoShapeContent(worksheet, content, isConvertToPPTX, target_doc_content);
//TODO конвертирую в текст без форматирую. пеесмотреть!
var specialPasteProps = window["Asc"]["editor"].wb.clipboard.specialPasteProps;
var specialPasteProps = window['AscCommon'].g_clipboardBase.specialPasteProps;
if(specialPasteProps && !specialPasteProps.format)
{
for(var i = 0; i < insertContent.Elements.length; i++)
......@@ -1408,8 +1404,8 @@
var allowedSpecialPasteProps = [sProps.sourceformatting, sProps.destinationFormatting];
worksheet.showSpecialPasteOptions(allowedSpecialPasteProps, null, position);
window["Asc"]["editor"].wb.clipboard.specialPasteRange = cursorPos;
window["Asc"]["editor"].wb.clipboard.specialPasteShapeId = isIntoShape.Id;
window['AscCommon'].g_clipboardBase.specialPasteButtonProps.range = cursorPos;
window['AscCommon'].g_clipboardBase.specialPasteButtonProps.shapeId = isIntoShape.Id;
}
},
......@@ -1939,7 +1935,7 @@
};
var aImagesToDownload = this._getImageFromHtml(node, true);
var specialPasteProps = this.Api.wb.clipboard.specialPasteProps;
var specialPasteProps = window['AscCommon'].g_clipboardBase.specialPasteProps;
if(aImagesToDownload !== null && (!specialPasteProps || (specialPasteProps && specialPasteProps.images)))//load to server
{
var api = Asc["editor"];
......@@ -4376,8 +4372,8 @@
window['AscCommonExcel'] = window['AscCommonExcel'] || {};
window["AscCommonExcel"].Clipboard = Clipboard;
window["Asc"]["SpecialPasteProps"] = window["Asc"].SpecialPasteProps = SpecialPasteProps;
prot = SpecialPasteProps.prototype;
window["Asc"]["SpecialPasteProps"] = window["Asc"].SpecialPasteProps = СSpecialPasteProps;
prot = СSpecialPasteProps.prototype;
prot["asc_setProps"] = prot.asc_setProps;
window["Asc"]["SpecialPasteShowOptions"] = window["Asc"].SpecialPasteShowOptions = SpecialPasteShowOptions;
......
......@@ -711,9 +711,9 @@
},
"showSpecialPasteOptions": function(val) {
self.handlers.trigger("asc_onShowSpecialPasteOptions", val);
if(!window["Asc"]["editor"].wb.clipboard.showSpecialPasteButton)
if(!window['AscCommon'].g_clipboardBase.showSpecialPasteButton)
{
window["Asc"]["editor"].wb.clipboard.showSpecialPasteButton = true;
window['AscCommon'].g_clipboardBase.showSpecialPasteButton = true;
}
}
});
......@@ -829,10 +829,10 @@
return !self.isShowComments;
});
this.model.handlers.add("hideSpecialPasteOptions", function() {
if(window["Asc"]["editor"].wb.clipboard.showSpecialPasteButton)
if(window['AscCommon'].g_clipboardBase.showSpecialPasteButton)
{
self.handlers.trigger("asc_onHideSpecialPasteOptions");
window["Asc"]["editor"].wb.clipboard.showSpecialPasteButton = false;
window['AscCommon'].g_clipboardBase.showSpecialPasteButton = false;
}
});
......
......@@ -8680,8 +8680,8 @@
break;
break;
case "paste":
var _clipboard = window["Asc"]["editor"].wb.clipboard;
_clipboard.specialPasteProps = _clipboard.specialPasteProps ? _clipboard.specialPasteProps : new Asc.SpecialPasteProps();
var clipboardBase = window['AscCommon'].g_clipboardBase;
clipboardBase.specialPasteProps = clipboardBase.specialPasteProps ? clipboardBase.specialPasteProps : new Asc.SpecialPasteProps();
t._loadDataBeforePaste(isLargeRange, fromBinary, val, bIsUpdate, canChangeColWidth);
bIsUpdate = false;
......@@ -8748,7 +8748,7 @@
newRange = this._pasteFromHTML(val, true);
}
if(!window["Asc"]["editor"].wb.clipboard.specialPasteProps)
if(!window["Asc"]["editor"].wb.clipboard.specialPasteStart)
{
var sBinary = window["Asc"]["editor"].wb.clipboard.copyProcessor.getBinaryForCopy(this, newRange);
var specialPasteSelectionRange = new AscCommonExcel.SelectionRange();
......@@ -8790,7 +8790,7 @@
pasteData = tempWorkbook.aWorksheets[0];
if(pasteData)
{
t._pasteFromBinary(pasteData, null, null, api.wb.clipboard.specialPasteProps);
t._pasteFromBinary(pasteData, null, null, window['AscCommon'].g_clipboardBase.specialPasteProps);
}
//удаляем вставленные изображения
......@@ -8819,7 +8819,7 @@
if(!isIntoShape && preSpecialPasteData && preSpecialPasteData.data)
{
var tempProps = new Asc.SpecialPasteProps();
api.wb.clipboard.specialPasteProps = tempProps;
window['AscCommon'].g_clipboardBase.specialPasteProps = tempProps;
//меняем activeRange
if(specialPasteData.activeRange)
......@@ -8838,7 +8838,7 @@
}
//далее специальная вставка
api.wb.clipboard.specialPasteProps = props;
window['AscCommon'].g_clipboardBase.specialPasteProps = props;
//TODO пока для закрытия транзации выставляю флаг. пересмотреть!
window["Asc"]["editor"].wb.clipboard.bIsEndTransaction = true;
api.wb.clipboard.pasteData(this, specialPasteData._format, specialPasteData.data1, specialPasteData.data2, specialPasteData.text_data, true);
......@@ -8846,8 +8846,8 @@
WorksheetView.prototype._pasteData = function (isLargeRange, fromBinary, val, bIsUpdate, canChangeColWidth) {
var t = this;
var _clipboard = window["Asc"]["editor"].wb.clipboard;
var specialPasteProps = _clipboard.specialPasteProps;
var g_clipboardBase = window['AscCommon'].g_clipboardBase;
var specialPasteProps = g_clipboardBase.specialPasteProps;
if ( val.props && val.props.onlyImages === true ) {
if(!window["Asc"]["editor"].wb.clipboard.specialPasteStart)
......@@ -9004,8 +9004,8 @@
WorksheetView.prototype._loadDataBeforePaste = function ( isLargeRange, fromBinary, pasteContent, bIsUpdate, canChangeColWidth ) {
var t = this;
var _clipboard = window["Asc"]["editor"].wb.clipboard;
var specialPasteProps = _clipboard.specialPasteProps;
var clipboardBase = window['AscCommon'].g_clipboardBase;
var specialPasteProps = clipboardBase.specialPasteProps;
//paste from excel binary
if(fromBinary)
......@@ -9296,8 +9296,8 @@
lastSelection.r2 = arn.r2;
var arnFor = [arn, arrFormula];
var _clipboard = window["Asc"]["editor"].wb.clipboard;
_clipboard.specialPasteProps = null;
var clipboardBase = window['AscCommon'].g_clipboardBase;
clipboardBase.specialPasteProps = null;
return arnFor;
};
......@@ -9593,8 +9593,8 @@
var arnFor = [trueActiveRange, arrFormula];
this.setSelection(trueActiveRange);
var _clipboard = window["Asc"]["editor"].wb.clipboard;
_clipboard.specialPasteProps = null;
var clipboardBase = window['AscCommon'].g_clipboardBase;
clipboardBase.specialPasteProps = null;
return arnFor;
};
......@@ -9819,7 +9819,7 @@
{
var _clipboard = window["Asc"]["editor"].wb.clipboard;
var specialPasteShowOptions = new Asc.SpecialPasteShowOptions();
_clipboard.specialPasteRange = range;
window['AscCommon'].g_clipboardBase.specialPasteButtonProps.range = range;
var cellCoord;
if(!positionShapeContent)
......@@ -9848,12 +9848,12 @@
{
var _clipboard = window["Asc"]["editor"].wb.clipboard;
var isIntoShape = this.objectRender.controller.getTargetDocContent(true);
if(_clipboard.showSpecialPasteButton && isIntoShape)
if(window['AscCommon'].g_clipboardBase.showSpecialPasteButton && isIntoShape)
{
if(_clipboard.specialPasteShapeId === isIntoShape.Id && _clipboard.specialPasteRange)
if(window['AscCommon'].g_clipboardBase.specialPasteButtonProps.shapeId === isIntoShape.Id)
{
var specialPasteShowOptions = new Asc.SpecialPasteShowOptions();
var range = _clipboard.specialPasteRange;
var range = window['AscCommon'].g_clipboardBase.specialPasteButtonProps.range;
/*var trueShapeSelection = isIntoShape.Get_SelectionState();
isIntoShape.Set_SelectionState(range, range.length - 1);*/
......@@ -9883,10 +9883,10 @@
//isIntoShape.Set_SelectionState(trueShapeSelection, trueShapeSelection.length - 1);
}
}
else if(_clipboard.showSpecialPasteButton && _clipboard.specialPasteRange)
else if(window['AscCommon'].g_clipboardBase.showSpecialPasteButton)
{
var specialPasteShowOptions = new Asc.SpecialPasteShowOptions();
var range = _clipboard.specialPasteRange;
var range = window['AscCommon'].g_clipboardBase.specialPasteButtonProps.range;
var isVisible = null !== this.getCellVisibleRange(range.c2, range.r2);
var cellCoord = this.getCellCoord(range.c2, range.r2);
......
......@@ -97,6 +97,12 @@
//special paste
this.specialPasteData = {};//данные последней вставки перед специальной вставкой
this.specialPasteUndoData = {};//для того, чтобы сделать повторную вставку с помощью special paste нужно сначала откатиться до того состояния, которое было до первой вставки
//параметры специальной вставки из меню.используется класс для EXCEL СSpecialPasteProps. чтобы не протаскивать через все вызываемые функции, добавил это свойство
this.specialPasteProps = null;
this.showSpecialPasteButton = false;//нужно показывать или нет кнопку специальной вставки
this.specialPasteButtonProps = {};//параметры кнопки специальной вставки - позиция. нужно при прокрутке документа, изменения масштаба и тп
}
CClipboardBase.prototype =
......
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