This commit is contained in:
Fabian Jakobs 2011-12-13 13:15:08 +01:00
commit 2d3ee456b6
31 changed files with 216 additions and 261 deletions

View file

@ -2679,69 +2679,51 @@ exports.setText = function(elem, text) {
}
};
if (!document.documentElement.classList) {
exports.hasCssClass = function(el, name) {
var classes = el.className.split(/\s+/g);
return classes.indexOf(name) !== -1;
};
exports.hasCssClass = function(el, name) {
var classes = el.className.split(/\s+/g);
return classes.indexOf(name) !== -1;
};
/**
* Add a CSS class to the list of classes on the given node
*/
exports.addCssClass = function(el, name) {
if (!exports.hasCssClass(el, name)) {
el.className += " " + name;
/**
* Add a CSS class to the list of classes on the given node
*/
exports.addCssClass = function(el, name) {
if (!exports.hasCssClass(el, name)) {
el.className += " " + name;
}
};
/**
* Remove a CSS class from the list of classes on the given node
*/
exports.removeCssClass = function(el, name) {
var classes = el.className.split(/\s+/g);
while (true) {
var index = classes.indexOf(name);
if (index == -1) {
break;
}
};
classes.splice(index, 1);
}
el.className = classes.join(" ");
};
/**
* Remove a CSS class from the list of classes on the given node
*/
exports.removeCssClass = function(el, name) {
var classes = el.className.split(/\s+/g);
while (true) {
var index = classes.indexOf(name);
if (index == -1) {
break;
}
classes.splice(index, 1);
exports.toggleCssClass = function(el, name) {
var classes = el.className.split(/\s+/g), add = true;
while (true) {
var index = classes.indexOf(name);
if (index == -1) {
break;
}
el.className = classes.join(" ");
};
add = false;
classes.splice(index, 1);
}
if(add)
classes.push(name);
exports.toggleCssClass = function(el, name) {
var classes = el.className.split(/\s+/g), add = true;
while (true) {
var index = classes.indexOf(name);
if (index == -1) {
break;
}
add = false;
classes.splice(index, 1);
}
if(add)
classes.push(name);
el.className = classes.join(" ");
return add;
};
} else {
exports.hasCssClass = function(el, name) {
return el.classList.contains(name);
};
exports.addCssClass = function(el, name) {
el.classList.add(name);
};
exports.removeCssClass = function(el, name) {
el.classList.remove(name);
};
exports.toggleCssClass = function(el, name) {
return el.classList.toggle(name);
};
}
el.className = classes.join(" ");
return add;
};
/**
* Add or remove a CSS class from the list of classes on the given node
@ -3036,10 +3018,6 @@ exports.cssText = ".ace-tm .ace_editor {\
color: white;\
}\
\
.ace-tm .ace_line .ace_fold {\
outline-color: #1C00FF;\
}\
\
.ace-tm .ace_line .ace_support.ace_function {\
color: rgb(60, 76, 114);\
}\
@ -19895,10 +19873,9 @@ define("text!kitchen-sink/docs/latex.tex", [], "\\usepackage{amsmath}\n" +
*
* ***** END LICENSE BLOCK ***** */
define('ace/split', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/dom', 'ace/lib/lang', 'ace/lib/event_emitter', 'ace/editor', 'ace/virtual_renderer', 'ace/edit_session'], function(require, exports, module) {
define('ace/split', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/lang', 'ace/lib/event_emitter', 'ace/editor', 'ace/virtual_renderer', 'ace/edit_session'], function(require, exports, module) {
var oop = require("./lib/oop");
var dom = require("./lib/dom");
var lang = require("./lib/lang");
var EventEmitter = require("./lib/event_emitter").EventEmitter;
@ -19935,7 +19912,6 @@ var Split = function(container, theme, splits) {
el.className = this.$editorCSS;
el.style.cssText = "position: absolute; top:0px; bottom:0px";
this.$container.appendChild(el);
var session = new EditSession("");
var editor = new Editor(new Renderer(el, this.$theme));
editor.on("focus", function() {
@ -20048,7 +20024,7 @@ var Split = function(container, theme, splits) {
};
this.setSession = function(session, idx) {
var editor
var editor;
if (idx == null) {
editor = this.$cEditor;
} else {
@ -22501,7 +22477,7 @@ exports.commands = [{
name: "gotoline",
bindKey: bindKey("Ctrl-L", "Command-L"),
exec: function(editor) {
var line = parseInt(prompt("Enter line number:"));
var line = parseInt(prompt("Enter line number:"), 10);
if (!isNaN(line)) {
editor.gotoLine(line);
}
@ -23429,7 +23405,7 @@ var VirtualRenderer = function(container, theme) {
// Chrome has some strange rendering issues if this is not done async
setTimeout(function() {
dom.addCssClass(container, "ace_editor");
}, 0)
}, 0);
this.setTheme(theme);
@ -23857,7 +23833,6 @@ var VirtualRenderer = function(container, theme) {
var minHeight = this.$size.scrollerHeight + this.lineHeight;
var longestLine = this.$getLongestLine();
var widthChanged = this.layerConfig.width != longestLine;
var horizScroll = this.$horizScrollAlwaysVisible || this.$size.scrollerWidth - longestLine < 0;
var horizScrollChanged = this.$horizScroll !== horizScroll;
@ -24293,7 +24268,7 @@ var Gutter = function(parentEl) {
if (!this.$decorations[row])
this.$decorations[row] = "";
this.$decorations[row] += " ace_" + className;
}
};
this.removeGutterDecoration = function(row, className){
this.$decorations[row] = this.$decorations[row].replace(" ace_" + className, "");
@ -25010,7 +24985,10 @@ var Text = function(parentEl) {
if (!this.$textToken[token.type]) {
var classes = "ace_" + token.type.replace(/\./g, " ace_");
stringBuilder.push("<span class='", classes, "'>", output, "</span>");
var style = "";
if (token.type == "fold")
style = " style='width:" + (token.value.length * this.config.characterWidth) + "px;' ";
stringBuilder.push("<span class='", classes, "'", style, ">", output, "</span>");
}
else {
stringBuilder.push(output);
@ -25022,7 +25000,6 @@ var Text = function(parentEl) {
var chars = 0;
var split = 0;
var splitChars;
var characterWidth = this.config.characterWidth;
var screenColumn = 0;
var self = this;
@ -25662,6 +25639,10 @@ define("text!ace/css/editor.css", [], "@import url(//fonts.googleapis.com/css?fa
"}\n" +
"\n" +
".ace_line .ace_fold {\n" +
" box-sizing: border-box;\n" +
" -moz-box-sizing: border-box;\n" +
" -webkit-box-sizing: border-box;\n" +
" \n" +
" display: inline-block;\n" +
" height: 11px;\n" +
" margin-top: -2px;\n" +
@ -25676,9 +25657,9 @@ define("text!ace/css/editor.css", [], "@import url(//fonts.googleapis.com/css?fa
" color: transparent;\n" +
"\n" +
" border: 1px solid black;\n" +
" -moz-border-radius: 1px;\n" +
" -webkit-border-radius: 1px;\n" +
" border-radius: 1px;\n" +
" -moz-border-radius: 2px;\n" +
" -webkit-border-radius: 2px;\n" +
" border-radius: 2px;\n" +
" \n" +
" cursor: pointer;\n" +
" pointer-events: auto;\n" +
@ -25710,9 +25691,9 @@ define("text!ace/css/editor.css", [], "@import url(//fonts.googleapis.com/css?fa
"\n" +
" margin: 0 -12px 1px 1px;\n" +
" display: inline-block;\n" +
" height: 15px;\n" +
" height: 14px;\n" +
" width: 11px;\n" +
" vertical-align: middle;\n" +
" vertical-align: text-bottom;\n" +
" \n" +
" background-image: url(\"data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%05%00%00%00%05%08%06%00%00%00%8Do%26%E5%00%00%004IDATx%DAe%8A%B1%0D%000%0C%C2%F2%2CK%96%BC%D0%8F9%81%88H%E9%D0%0E%96%C0%10%92%3E%02%80%5E%82%E4%A9*-%EEsw%C8%CC%11%EE%96w%D8%DC%E9*Eh%0C%151(%00%00%00%00IEND%AEB%60%82\");\n" +
" background-repeat: no-repeat;\n" +

File diff suppressed because one or more lines are too long