From b680af490b9736d16ed491c999af3f06d78a7d18 Mon Sep 17 00:00:00 2001 From: Ananya Sen Date: Thu, 26 Apr 2012 12:26:31 -0700 Subject: IKNINJA-1551 - added editor support for other file types Signed-off-by: Ananya Sen --- index.html | 8 ++++++++ js/controllers/code-editor-controller.js | 20 ++++++++++++++------ js/io/templates/descriptor.json | 9 ++++++++- js/io/templates/files/xml.txt | 1 + js/stage/stage-view.reel/stage-view.js | 21 +++++++++++++++++++++ 5 files changed, 52 insertions(+), 7 deletions(-) create mode 100644 js/io/templates/files/xml.txt diff --git a/index.html b/index.html index eb7c318f..2c50d294 100755 --- a/index.html +++ b/index.html @@ -225,15 +225,23 @@ + + + + + + + + diff --git a/js/controllers/code-editor-controller.js b/js/controllers/code-editor-controller.js index ab0521eb..d560e721 100644 --- a/js/controllers/code-editor-controller.js +++ b/js/controllers/code-editor-controller.js @@ -130,6 +130,10 @@ var CodeEditorController = exports.CodeEditorController = Montage.create(Compone _showAutoComplete : { enumerable:false, value:function(type, keyEvent){ + var status=false; + if(((keyEvent.keyCode === 83) && (keyEvent.ctrlKey || keyEvent.metaKey))){ + debugger; + } switch(type){ case "javascript": if((keyEvent.type === "keyup")//need seperate keycode set per mode @@ -145,15 +149,19 @@ var CodeEditorController = exports.CodeEditorController = Montage.create(Compone || (keyEvent.shiftKey && keyEvent.keyCode === 221)//close bracket } || (keyEvent.shiftKey && keyEvent.keyCode === 57)//open bracket ( || (keyEvent.shiftKey && keyEvent.keyCode === 48)//close bracket ) - || ((keyEvent.ctrlKey || keyEvent.metaKey) && keyEvent.keyCode === 83)//ctrl+S - || ((keyEvent.ctrlKey || keyEvent.metaKey) && keyEvent.keyCode === 90)//ctrl+z - || ((keyEvent.ctrlKey || keyEvent.metaKey) && keyEvent.shiftKey && keyEvent.keyCode === 90)//ctrl+shift+z - || ((keyEvent.ctrlKey || keyEvent.metaKey) && keyEvent.keyCode === 89)//ctrl+y + || ((keyEvent.keyCode === 83) && (keyEvent.ctrlKey || keyEvent.metaKey))//ctrl+S + || ((keyEvent.keyCode === 90) && (keyEvent.ctrlKey || keyEvent.metaKey))//ctrl+z + || ((keyEvent.keyCode === 89) && (keyEvent.ctrlKey || keyEvent.metaKey))//ctrl+y ) - ){return true;} + ){ + status = true; + break; + } default : - return false; + status = false; } + + return status; } }, diff --git a/js/io/templates/descriptor.json b/js/io/templates/descriptor.json index acc03979..21c4b58c 100644 --- a/js/io/templates/descriptor.json +++ b/js/io/templates/descriptor.json @@ -6,7 +6,7 @@ "name":"Blank File", "uri":"/", "type":"directory", - "children":["js/io/templates/files/html.txt", "js/io/templates/files/js.txt", "js/io/templates/files/css.txt", "js/io/templates/files/json.txt", "js/io/templates/files/php.txt", "js/io/templates/files/pl.txt", "js/io/templates/files/py.txt", "js/io/templates/files/rb.txt"] + "children":["js/io/templates/files/html.txt", "js/io/templates/files/js.txt", "js/io/templates/files/css.txt", "js/io/templates/files/json.txt", "js/io/templates/files/php.txt", "js/io/templates/files/pl.txt", "js/io/templates/files/py.txt", "js/io/templates/files/rb.txt", "js/io/templates/files/xml.txt"] }, "js/io/templates/files/html.txt":{ "name":"HTML", @@ -64,6 +64,13 @@ "fileExtension":".rb", "children":["defaultTemplate"] }, + "js/io/templates/files/xml.txt":{ + "name":"XML", + "uri":"js/io/templates/files/xml.txt", + "type":"file", + "fileExtension":".xml", + "children":["defaultTemplate"] + }, "defaultTemplate":{ "name": "Basic", "uri": "defaultTemplate", diff --git a/js/io/templates/files/xml.txt b/js/io/templates/files/xml.txt new file mode 100644 index 00000000..8906a78b --- /dev/null +++ b/js/io/templates/files/xml.txt @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/js/stage/stage-view.reel/stage-view.js b/js/stage/stage-view.reel/stage-view.js index 53c6125b..dcc84a35 100755 --- a/js/stage/stage-view.reel/stage-view.js +++ b/js/stage/stage-view.reel/stage-view.js @@ -88,6 +88,27 @@ exports.StageView = Montage.create(Component, { case "js" : type = "javascript"; break; + case "html" : + type = "htmlmixed"; + break; + case "json" : + type = "javascript"; + break; + case "php" : + type = "php"; + break; + case "pl" : + type = "perl"; + break; + case "py" : + type = "python"; + break; + case "rb" : + type = "ruby"; + break; + case "xml" : + type = "xml"; + break; } document.getElementById("codeMirror_"+doc.uuid).style.display="block"; -- cgit v1.2.3