loleaflet/src/control/Control.JSDialogBuilder.js | 63 +++++++++++++++-------- 1 file changed, 43 insertions(+), 20 deletions(-)
New commits: commit 75d6cdbf9cb0887ca6e88f10a6e14fb3af7b38b8 Author: Szymon Kłos <szymon.k...@collabora.com> AuthorDate: Thu Oct 24 11:32:22 2019 +0200 Commit: Szymon Kłos <szymon.k...@collabora.com> CommitDate: Thu Oct 24 11:32:22 2019 +0200 jsdliaogs: girds reorder & combobox icons Change-Id: I29855a3ec5367c01675bb40da2fde92d2b402ab2 diff --git a/loleaflet/src/control/Control.JSDialogBuilder.js b/loleaflet/src/control/Control.JSDialogBuilder.js index 8a1c197ed..4584981d1 100644 --- a/loleaflet/src/control/Control.JSDialogBuilder.js +++ b/loleaflet/src/control/Control.JSDialogBuilder.js @@ -63,8 +63,6 @@ L.Control.JSDialogBuilder = L.Control.extend({ this._toolitemHandlers['.uno:XLineColor'] = this._colorControl; this._toolitemHandlers['.uno:SelectWidth'] = this._lineWidthControl; - this._toolitemHandlers['.uno:CharFontName'] = this._fontNameControl; - this._toolitemHandlers['.uno:FontHeight'] = this._fontHeightControl; this._toolitemHandlers['.uno:FontColor'] = this._colorControl; this._toolitemHandlers['.uno:BackColor'] = this._colorControl; this._toolitemHandlers['.uno:BackgroundColor'] = this._colorControl; @@ -141,9 +139,14 @@ L.Control.JSDialogBuilder = L.Control.extend({ .replace('%', ''); }, - _containerHandler: function(parentContainer, data) { + _containerHandler: function(parentContainer, data, builder) { if (data.enabled == 'false') return false; + + if (data.cols && data.rows) { + return builder._gridHandler(parentContainer, data, builder); + } + return true; }, @@ -178,6 +181,28 @@ L.Control.JSDialogBuilder = L.Control.extend({ return null; }, + _swapControls: function(controls, indexA, indexB) { + var tmp = controls[indexA]; + controls[indexA] = controls[indexB]; + controls[indexB] = tmp; + }, + + /// reorder widgets in case of vertical placement of labels and corresponding controls + /// current implementation fits for 2 column views + _gridHandler: function(parentContainer, data, builder) { + var children = data.children; + if (children) { + var count = children.length; + for (var i = 0; i < count - 2; i++) { + if (children[i].type == 'fixedtext' && children[i+1].type == 'fixedtext') { + builder._swapControls(children, i+1, i+2); + } + } + } + + return true; + }, + _explorableEntry: function(parentContainer, title, contentNode, builder, valueNode, iconPath) { var sectionTitle = L.DomUtil.create('div', 'ui-header level-' + builder._currentDepth + ' mobile-wizard ui-widget', parentContainer); $(sectionTitle).css('justify-content', 'space-between'); @@ -503,12 +528,22 @@ L.Control.JSDialogBuilder = L.Control.extend({ return false; }, - _comboboxControl: function(parentContainer, data, builder, iconPath) { + _setIconAndNameFrofCombobox: function(data) { + if (data.command == '.uno:CharFontName') { + data.text = _('Font Name'); + } else if (data.command == '.uno:FontHeight') { + data.text = _('Font Size'); + } + }, + + _comboboxControl: function(parentContainer, data, builder) { // TODO: event listener in the next level... if (!data.entries || data.entries.length === 0) return false; + builder._setIconAndNameFrofCombobox(data); + var title = data.text; var valueNode = null; if (data.selectedEntries) { @@ -530,6 +565,10 @@ L.Control.JSDialogBuilder = L.Control.extend({ var contentNode = {type: 'container', children: entries}; + var iconPath = null; + if (data.command) + iconPath = builder._createIconPath(data.command); + builder._explorableEntry(parentContainer, title, contentNode, builder, valueNode, iconPath); return false; @@ -800,22 +839,6 @@ L.Control.JSDialogBuilder = L.Control.extend({ builder._explorableMenu(parentContainer, title, data.children, builder, content); }, - _fontNameControl: function(parentContainer, data, builder) { - var iconPath = 'images/lc_charfontname.svg'; - data.entries = [ 'Liberation Sans' ]; - if (!(data.selectedEntries && data.selectedEntries.length)) - data.selectedEntries = [0]; - builder._comboboxControl(parentContainer, data, builder, iconPath); - }, - - _fontHeightControl: function(parentContainer, data, builder) { - var iconPath = 'images/lc_fontheight.svg'; - data.entries = [ '8', '10', '11', '12', '14', '16', '24', '32', '48' ]; - if (!(data.selectedEntries && data.selectedEntries.length)) - data.selectedEntries = [1]; - builder._comboboxControl(parentContainer, data, builder, iconPath); - }, - build: function(parent, data) { for (var childIndex in data) { var childData = data[childIndex]; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits