From d0d3ca2de8b3f317b77c0722d1da696ffc0148f6 Mon Sep 17 00:00:00 2001 From: Matthew Kastor Date: Fri, 5 Apr 2013 03:06:40 -0400 Subject: [PATCH] kitchen sink using statusbar extension I refactored the kitchen sink to use the statusbar extension, deleted the build directory, did a full rebuild and it works. :D --- demo/kitchen-sink/demo.js | 2 +- demo/kitchen-sink/statusbar.js | 48 ---------------------------------- demo/kitchen-sink/styles.css | 6 +++++ 3 files changed, 7 insertions(+), 49 deletions(-) delete mode 100644 demo/kitchen-sink/statusbar.js diff --git a/demo/kitchen-sink/demo.js b/demo/kitchen-sink/demo.js index 4a12d3f0..56e32d53 100644 --- a/demo/kitchen-sink/demo.js +++ b/demo/kitchen-sink/demo.js @@ -458,7 +458,7 @@ event.addListener(container, "drop", function(e) { -var StatusBar = require("./statusbar").StatusBar; +var StatusBar = require("ace/ext/statusbar").StatusBar; new StatusBar(env.editor, cmdLine.container); diff --git a/demo/kitchen-sink/statusbar.js b/demo/kitchen-sink/statusbar.js deleted file mode 100644 index 57620036..00000000 --- a/demo/kitchen-sink/statusbar.js +++ /dev/null @@ -1,48 +0,0 @@ -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.style.cssText = "color: gray; position:absolute; right:0; border-left:1px solid"; - 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 diff --git a/demo/kitchen-sink/styles.css b/demo/kitchen-sink/styles.css index f32a82a0..133068c0 100644 --- a/demo/kitchen-sink/styles.css +++ b/demo/kitchen-sink/styles.css @@ -41,4 +41,10 @@ body { #controls td + td { text-align: left; +} +#lineColIndicator { + color: gray; + position: absolute; + right: 0; + border-left: 1px solid; } \ No newline at end of file