From 4ef71c353426e3dcad726cb23ee95dd389b1d184 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20Bartelme=C3=9F?= Date: Tue, 21 Feb 2012 22:29:40 +0100 Subject: [PATCH 1/2] documented ace_setProperty --- static/js/ace2_inner.js | 86 ++++++++++++++++++----------------------- 1 file changed, 37 insertions(+), 49 deletions(-) diff --git a/static/js/ace2_inner.js b/static/js/ace2_inner.js index d2113574..1c703673 100644 --- a/static/js/ace2_inner.js +++ b/static/js/ace2_inner.js @@ -1123,57 +1123,45 @@ function OUTER(gscope) } } + // This methed exposes a setter for some ace properties + // @param key the name of the parameter + // @param value the value to set to editorInfo.ace_setProperty = function(key, value) { - var k = key.toLowerCase(); - if (k == "wraps") - { - setWraps(value); - } - else if (k == "showsauthorcolors") - { - setClassPresence(root, "authorColors", !! value); - } - else if (k == "showsuserselections") - { - setClassPresence(root, "userSelections", !! value); - } - else if (k == "showslinenumbers") - { - hasLineNumbers = !! value; - // disable line numbers on mobile devices - if (browser.mobile) hasLineNumbers = false; - setClassPresence(sideDiv, "sidedivhidden", !hasLineNumbers); - fixView(); - } - else if (k == "grayedout") - { - setClassPresence(outerWin.document.body, "grayedout", !! value); - } - else if (k == "dmesg") - { - dmesg = value; - window.dmesg = value; - } - else if (k == 'userauthor') - { - thisAuthor = String(value); - } - else if (k == 'styled') - { - setStyled(value); - } - else if (k == 'textface') - { - setTextFace(value); - } - else if (k == 'textsize') - { - setTextSize(value); - } - else if (k == 'rtlistrue') - { - setClassPresence(root, "rtl", !! value); + + // Convinience function returning a setter for a class on an element + var setClassPresenceNamed = function(element, cls){ + return function(value){ + setClassPresence(element, cls, !! value) + } + }; + + // These properties are exposed + var setters = { + wraps: setWraps, + showsauthorcolors: setClassPresenceNamed(root, "authorColors"), + showsuserselections: setClassPresenceNamed(root, "userSelections"), + showslinenumbers : function(value){ + hasLineNumbers = !! value; + // disable line numbers on mobile devices + if (browser.mobile) hasLineNumbers = false; + setClassPresence(sideDiv, "sidedivhidden", !hasLineNumbers); + fixView(); + }, + grayedout: setClassPresenceNamed(outerWin.document.body, "grayedout"), + dmesg: function(){ dmesg = window.dmesg = value; }, + userauthor: function(value){ thisAuthor = String(value); }, + styled: setStyled, + textface: setTextFace, + textsize: setTextSize, + rtlistrue: setClassPresenceNamed(root, "rtl") + }; + + var setter = setters[key.toLowerCase();]; + + // check if setter is present + if(setter !== undefined){ + setter(value) } } From b06f3f69036a0d52b9d248b2deede31f6878fcfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20Bartelme=C3=9F?= Date: Tue, 21 Feb 2012 23:15:19 +0100 Subject: [PATCH 2/2] removed ";" --- static/js/ace2_inner.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/static/js/ace2_inner.js b/static/js/ace2_inner.js index 1c703673..5d6f5a4d 100644 --- a/static/js/ace2_inner.js +++ b/static/js/ace2_inner.js @@ -1157,7 +1157,7 @@ function OUTER(gscope) rtlistrue: setClassPresenceNamed(root, "rtl") }; - var setter = setters[key.toLowerCase();]; + var setter = setters[key.toLowerCase()]; // check if setter is present if(setter !== undefined){