diff options
| author | Xavier Morel <xmo@openerp.com> | 2014-01-20 17:26:04 +0100 |
|---|---|---|
| committer | Xavier Morel <xmo@openerp.com> | 2014-01-20 17:26:04 +0100 |
| commit | ca02581993f0ead8a0c3a6e7111537bf61fc65be (patch) | |
| tree | 6e239a2ec9a5c4c592c9ed2346d7c85d66719157 /addons/website/static/src/js/website.editor.js | |
| parent | 501e88d3ebb628774d30eaccff6a93327853a033 (diff) | |
[IMP] replace icon size select by selectable multi-size preview
bzr revid: xmo@openerp.com-20140120162604-yoyg21bf1z306hwg
Diffstat (limited to 'addons/website/static/src/js/website.editor.js')
| -rw-r--r-- | addons/website/static/src/js/website.editor.js | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/addons/website/static/src/js/website.editor.js b/addons/website/static/src/js/website.editor.js index 35a8fad5707..778ab6b699b 100644 --- a/addons/website/static/src/js/website.editor.js +++ b/addons/website/static/src/js/website.editor.js @@ -1463,6 +1463,13 @@ this.$('#fa-icon').val(e.target.getAttribute('data-id')); this.update_preview(); }, + 'click #fa-preview span': function (e) { + e.preventDefault(); + e.stopPropagation(); + + this.$('#fa-size').val(e.target.getAttribute('data-size')); + this.update_preview(); + } }), // List of FontAwesome icons in 4.0.3, extracted from the cheatsheet. @@ -1508,7 +1515,7 @@ for (var i = 0; i < classes.length; i++) { var cls = classes[i]; switch(cls) { - case 'fa-lg':case 'fa-2x':case 'fa-3x':case 'fa-4x':case 'fa-5x': + case 'fa-2x':case 'fa-3x':case 'fa-4x':case 'fa-5x': // size classes this.$('#fa-size').val(cls); continue; @@ -1545,7 +1552,24 @@ ]; }, update_preview: function () { - this.$('#fa-preview')[0].className = this.get_fa_classes().join(' '); + var $preview = this.$('#fa-preview').empty(); + var sizes = ['', 'fa-2x', 'fa-3x', 'fa-4x', 'fa-5x']; + var classes = this.get_fa_classes(); + var no_sizes = _.difference(classes, sizes).join(' '); + var selected = false; + for (var i = sizes.length - 1; i >= 0; i--) { + var size = sizes[i]; + + var $p = $('<span>') + .attr('data-size', size) + .addClass(size) + .addClass(no_sizes); + if ((size && _.contains(classes, size)) || (!size && !selected)) { + $p.addClass('font-icons-selected'); + selected = true; + } + $preview.prepend($p); + } } }); |
