From 239742e80cbc5d11218a82416500b5992ab42f49 Mon Sep 17 00:00:00 2001 From: Jean-Tiare Le Bigot Date: Thu, 1 Dec 2011 11:50:17 +0100 Subject: [PATCH] added internal ordered list support. Numbering increment is not yet handled. small code factorisation. Added related CSS --- static/css/iframe_editor.css | 19 +++++++++++++++++++ static/js/ace2_inner.js | 14 +++++++++++--- 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/static/css/iframe_editor.css b/static/css/iframe_editor.css index 86ca99117..4385fff0c 100644 --- a/static/css/iframe_editor.css +++ b/static/css/iframe_editor.css @@ -32,6 +32,25 @@ ul.list-bullet6 { list-style-type: square; } ul.list-bullet7 { list-style-type: disc; } ul.list-bullet8 { list-style-type: circle; } +ul.list-number1 { margin-left: 1.5em; } +ul.list-number2 { margin-left: 3em; } +ul.list-number3 { margin-left: 4.5em; } +ul.list-number4 { margin-left: 6em; } +ul.list-number5 { margin-left: 7.5em; } +ul.list-number6 { margin-left: 9em; } +ul.list-number7 { margin-left: 10.5em; } +ul.list-number8 { margin-left: 12em; } + +ul { list-style-type: disc; } +ul.list-number1 { list-style-type: decimal; } +ul.list-number2 { list-style-type: lower-latin; } +ul.list-number3 { list-style-type: lower-roman; } +ul.list-number4 { list-style-type: decimal; } +ul.list-number5 { list-style-type: lower-latin; } +ul.list-number6 { list-style-type: lower-roman; } +ul.list-number7 { list-style-type: decimal; } +ul.list-number8 { list-style-type: lower-latin; } + ul.list-indent1 { margin-left: 1.5em; } ul.list-indent2 { margin-left: 3em; } ul.list-indent3 { margin-left: 4.5em; } diff --git a/static/js/ace2_inner.js b/static/js/ace2_inner.js index 6c8ec60e0..34b43a3cb 100644 --- a/static/js/ace2_inner.js +++ b/static/js/ace2_inner.js @@ -5218,7 +5218,7 @@ function OUTER(gscope) } } - function doInsertUnorderedList() + function doInsertUnorderedList(type) { if (!(rep.selStart && rep.selEnd)) { @@ -5233,7 +5233,7 @@ function OUTER(gscope) for (var n = firstLine; n <= lastLine; n++) { var listType = getLineListType(n); - if (!listType || listType.slice(0, 'bullet'.length) != 'bullet') + if (!listType || listType.slice(0, type.length) != type) { allLinesAreList = false; break; @@ -5252,11 +5252,19 @@ function OUTER(gscope) level = Number(listType[2]); } var t = getLineListType(n); - mods.push([n, allLinesAreList ? 'indent' + level : (t ? 'bullet' + level : 'bullet1')]); + mods.push([n, allLinesAreList ? 'indent' + level : (t ? type + level : type + '1')]); } setLineListTypes(mods); } + + function doInsertUnorderedList(){ + doInsertList('bullet'); + } + function doInsertOrderedList(){ + doInsertList('number'); + } editorInfo.ace_doInsertUnorderedList = doInsertUnorderedList; + editorInfo.ace_doInsertOrderedList = doInsertOrderedList; var mozillaFakeArrows = (browser.mozilla && (function() {