From 3c46895f8cb5dc7661424890e44a94345a4a5e86 Mon Sep 17 00:00:00 2001 From: nightwing Date: Sat, 13 Apr 2013 20:37:47 +0400 Subject: [PATCH] cleanup --- demo/demo_helper.js | 3 ++ demo/kitchen-sink/styles.css | 2 +- demo/statusbar.html | 25 +++++----- lib/ace/ext/statusbar.js | 96 ++++++++++++++++++------------------ 4 files changed, 64 insertions(+), 62 deletions(-) create mode 100644 demo/demo_helper.js diff --git a/demo/demo_helper.js b/demo/demo_helper.js new file mode 100644 index 00000000..116338af --- /dev/null +++ b/demo/demo_helper.js @@ -0,0 +1,3 @@ +ace.require("ace/lib/net").get(document.baseURI, function(t){ + editor.setValue(t, 1); +}) \ No newline at end of file diff --git a/demo/kitchen-sink/styles.css b/demo/kitchen-sink/styles.css index 133068c0..ba1c1b47 100644 --- a/demo/kitchen-sink/styles.css +++ b/demo/kitchen-sink/styles.css @@ -42,7 +42,7 @@ body { #controls td + td { text-align: left; } -#lineColIndicator { +.ace_status-indicator { color: gray; position: absolute; right: 0; diff --git a/demo/statusbar.html b/demo/statusbar.html index 72648a94..9fc6583c 100644 --- a/demo/statusbar.html +++ b/demo/statusbar.html @@ -28,31 +28,30 @@ background-color: rgb(245, 245, 245); color: gray; } - #statusbar#lineColIndicator { - border-left:1px solid; + .ace_status-indicator { + color: gray; + position: absolute; + right: 0; + border-left: 1px solid; } -
-    var editor = ace.edit("editor");
-    var StatusBar = ace.require('ace/ext/statusbar').StatusBar;
-    var statusBar = new StatusBar(editor, document.getElementById('statusBar'));
-    editor.setTheme("ace/theme/twilight");
-    editor.getSession().setMode("ace/mode/javascript");
-
+

 
ace rocks!
- - + + + diff --git a/lib/ace/ext/statusbar.js b/lib/ace/ext/statusbar.js index 6c0417fb..666febfa 100644 --- a/lib/ace/ext/statusbar.js +++ b/lib/ace/ext/statusbar.js @@ -1,49 +1,49 @@ -define(function(require, exports, module) { -"use strict"; -/** simple statusbar **/ -var dom = require("ace/lib/dom"); -var lang = require("ace/lib/lang"); - -var StatusBar = function(editor, parentNode) { - this.element = dom.createElement("div"); - this.element.id = 'lineColIndicator'; - this.element.style.cssText = "display: inline-block;"; - parentNode.appendChild(this.element); - - var statusUpdate = lang.delayedCall(function(){ - this.updateStatus(editor) - }.bind(this)); - editor.on("changeStatus", function() { - statusUpdate.schedule(100); - }); - editor.on("changeSelection", function() { - statusUpdate.schedule(100); - }); -}; - -(function(){ - this.updateStatus = function(editor) { - var status = []; - function add(str, separator) { - str && status.push(str, separator || "|"); - } - - if (editor.$vimModeHandler) - add(editor.$vimModeHandler.getStatusText()); - else if (editor.commands.recording) - add("REC"); - - var c = editor.selection.lead; - add(c.row + ":" + c.column, " "); - if (!editor.selection.isEmpty()) { - var r = editor.getSelectionRange(); - add("(" + (r.end.row - r.start.row) + ":" +(r.end.column - r.start.column) + ")"); - } - status.pop(); - this.element.textContent = status.join(""); - }; -}).call(StatusBar.prototype); - -exports.StatusBar = StatusBar; - +define(function(require, exports, module) { +"use strict"; +/** simple statusbar **/ +var dom = require("ace/lib/dom"); +var lang = require("ace/lib/lang"); + +var StatusBar = function(editor, parentNode) { + this.element = dom.createElement("div"); + this.element.className = "ace_status-indicator"; + this.element.style.cssText = "display: inline-block;"; + parentNode.appendChild(this.element); + + var statusUpdate = lang.delayedCall(function(){ + this.updateStatus(editor) + }.bind(this)); + editor.on("changeStatus", function() { + statusUpdate.schedule(100); + }); + editor.on("changeSelection", function() { + statusUpdate.schedule(100); + }); +}; + +(function(){ + this.updateStatus = function(editor) { + var status = []; + function add(str, separator) { + str && status.push(str, separator || "|"); + } + + if (editor.$vimModeHandler) + add(editor.$vimModeHandler.getStatusText()); + else if (editor.commands.recording) + add("REC"); + + var c = editor.selection.lead; + add(c.row + ":" + c.column, " "); + if (!editor.selection.isEmpty()) { + var r = editor.getSelectionRange(); + add("(" + (r.end.row - r.start.row) + ":" +(r.end.column - r.start.column) + ")"); + } + status.pop(); + this.element.textContent = status.join(""); + }; +}).call(StatusBar.prototype); + +exports.StatusBar = StatusBar; + }); \ No newline at end of file