loleaflet/src/control/Control.ColumnHeader.js | 40 ++++++++++++++++++++++++-- loleaflet/src/control/Control.RowHeader.js | 40 ++++++++++++++++++++++++-- 2 files changed, 74 insertions(+), 6 deletions(-)
New commits: commit ea45bdb1f9a2230ca81cc723db1b6133213a0e26 Author: Henry Castro <hcas...@collabora.com> Date: Sun Oct 23 08:42:56 2016 -0400 loleaflet: add hide/show row/column to header context menu diff --git a/loleaflet/src/control/Control.ColumnHeader.js b/loleaflet/src/control/Control.ColumnHeader.js index ef67d60..70fed02 100644 --- a/loleaflet/src/control/Control.ColumnHeader.js +++ b/loleaflet/src/control/Control.ColumnHeader.js @@ -54,6 +54,20 @@ L.Control.ColumnHeader = L.Control.Header.extend({ var colAlpha = options.$trigger.attr('rel').split('spreadsheet-column-')[1]; colHeaderObj.optimalWidth.call(colHeaderObj, colAlpha); } + }, + 'hideColumn': { + name: _('Hide Columns'), + callback: function(key, options) { + var colAlpha = options.$trigger.attr('rel').split('spreadsheet-column-')[1]; + colHeaderObj.hideColumn.call(colHeaderObj, colAlpha); + } + }, + 'showColumn': { + name: _('Show Columns'), + callback: function(key, options) { + var colAlpha = options.$trigger.attr('rel').split('spreadsheet-column-')[1]; + colHeaderObj.showColumn.call(colHeaderObj, colAlpha); + } } }, zIndex: 10 @@ -66,7 +80,9 @@ L.Control.ColumnHeader = L.Control.Header.extend({ this._map._docLayer.twipsToHMM(this._map._docLayer.STD_EXTRA_WIDTH), {title: _('Optimal Column Width')}); } - this._selectColumn(colAlpha, 0); + if (this._map._docLayer._selections.getLayers().length === 0) { + this._selectColumn(colAlpha, 0); + } this._dialog.addTo(this._map); this._map.enable(false); this._dialog.show(); @@ -76,15 +92,33 @@ L.Control.ColumnHeader = L.Control.Header.extend({ // First select the corresponding column because // .uno:InsertColumn doesn't accept any column number // as argument and just inserts before the selected column - this._selectColumn(colAlpha, 0); + if (this._map._docLayer._selections.getLayers().length === 0) { + this._selectColumn(colAlpha, 0); + } this._map.sendUnoCommand('.uno:InsertColumns'); }, deleteColumn: function(colAlpha) { - this._selectColumn(colAlpha, 0); + if (this._map._docLayer._selections.getLayers().length === 0) { + this._selectColumn(colAlpha, 0); + } this._map.sendUnoCommand('.uno:DeleteColumns'); }, + hideColumn: function(colAlpha) { + if (this._map._docLayer._selections.getLayers().length === 0) { + this._selectColumn(colAlpha, 0); + } + this._map.sendUnoCommand('.uno:HideColumn'); + }, + + showColumn: function(colAlpha) { + if (this._map._docLayer._selections.getLayers().length === 0) { + this._selectColumn(colAlpha, 0); + } + this._map.sendUnoCommand('.uno:ShowColumn'); + }, + clearColumns : function () { while (this._columns.firstChild) { this._columns.removeChild(this._columns.firstChild); diff --git a/loleaflet/src/control/Control.RowHeader.js b/loleaflet/src/control/Control.RowHeader.js index 7406131..5263875 100644 --- a/loleaflet/src/control/Control.RowHeader.js +++ b/loleaflet/src/control/Control.RowHeader.js @@ -52,6 +52,20 @@ L.Control.RowHeader = L.Control.Header.extend({ var row = parseInt(options.$trigger.attr('rel').split('spreadsheet-row-')[1]); rowHeaderObj.optimalHeight.call(rowHeaderObj, row); } + }, + 'hideRow': { + name: _('Hide Rows'), + callback: function(key, options) { + var row = parseInt(options.$trigger.attr('rel').split('spreadsheet-row-')[1]); + rowHeaderObj.hideRow.call(rowHeaderObj, row); + } + }, + 'showRow': { + name: _('Show Rows'), + callback: function(key, options) { + var row = parseInt(options.$trigger.attr('rel').split('spreadsheet-row-')[1]); + rowHeaderObj.showRow.call(rowHeaderObj, row); + } } }, zIndex: 10 @@ -62,7 +76,9 @@ L.Control.RowHeader = L.Control.Header.extend({ if (!this._dialog) { this._dialog = L.control.metricInput(this._onDialogResult, this, 0, {title: _('Optimal Row Height')}); } - this._selectRow(row, 0); + if (this._map._docLayer._selections.getLayers().length === 0) { + this._selectRow(row, 0); + } this._dialog.addTo(this._map); this._map.enable(false); this._dialog.show(); @@ -72,15 +88,33 @@ L.Control.RowHeader = L.Control.Header.extend({ // First select the corresponding row because // .uno:InsertRows doesn't accept any row number // as argument and just inserts before the selected row - this._selectRow(row, 0); + if (this._map._docLayer._selections.getLayers().length === 0) { + this._selectRow(row, 0); + } this._map.sendUnoCommand('.uno:InsertRows'); }, deleteRow: function(row) { - this._selectRow(row, 0); + if (this._map._docLayer._selections.getLayers().length === 0) { + this._selectRow(row, 0); + } this._map.sendUnoCommand('.uno:DeleteRows'); }, + hideRow: function(row) { + if (this._map._docLayer._selections.getLayers().length === 0) { + this._selectRow(row, 0); + } + this._map.sendUnoCommand('.uno:HideRow'); + }, + + showRow: function(row) { + if (this._map._docLayer._selections.getLayers().length === 0) { + this._selectColumn(row, 0); + } + this._map.sendUnoCommand('.uno:ShowRow'); + }, + clearRows: function () { while (this._rows.firstChild) { this._rows.removeChild(this._rows.firstChild); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits