summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorjohn.j.camilleri <john.j.camilleri@chalmers.se>2012-11-23 08:25:00 +0000
committerjohn.j.camilleri <john.j.camilleri@chalmers.se>2012-11-23 08:25:00 +0000
commitee2f0a748737dc6e4a1723a9c73e91b73621a645 (patch)
tree9a5f334d3d9d610c33140b733a159db61529368a /src
parent4e00ddea08cfc3ed0349324af9ed2816932056c2 (diff)
Syntax editor: return to editor after having switched to minibar
Diffstat (limited to 'src')
-rw-r--r--src/www/syntax-editor/editor.html3
-rw-r--r--src/www/syntax-editor/editor.js8
-rw-r--r--src/www/syntax-editor/editor_online.js43
3 files changed, 39 insertions, 15 deletions
diff --git a/src/www/syntax-editor/editor.html b/src/www/syntax-editor/editor.html
index 1d4cc401c..b9cfa0ec2 100644
--- a/src/www/syntax-editor/editor.html
+++ b/src/www/syntax-editor/editor.html
@@ -9,7 +9,8 @@
</head>
<body class=syntax_editor>
<h2>Syntax Editor</h2>
- <div id="editor" class="test"></div>
+ <div id=minibar></div>
+ <div id=editor></div>
<noscript>This page doesn't works unless JavaScript is enabled.</noscript>
<hr />
diff --git a/src/www/syntax-editor/editor.js b/src/www/syntax-editor/editor.js
index 70dbab8e9..ca4e8628f 100644
--- a/src/www/syntax-editor/editor.js
+++ b/src/www/syntax-editor/editor.js
@@ -71,6 +71,12 @@ function Editor(server,opts) {
clear(this.container);
this.container.classList.remove("editor");
}
+ this.hide = function() {
+ this.container.style.display="none";
+ }
+ this.show = function() {
+ this.container.style.display="block";
+ }
}
@@ -243,7 +249,7 @@ Editor.prototype.update_linearisation=function(){
function row(lang, lin) {
var langname = langpart(lang, t.grammar.name);
var btn = button(langname, function(){
- t.options.lin_action(lin,lang);
+ bind(t.options.lin_action,t)(lin,lang);
});
var c1 = th(btn);
var c2 = td(text(lin));
diff --git a/src/www/syntax-editor/editor_online.js b/src/www/syntax-editor/editor_online.js
index feeb09efb..9edcf2947 100644
--- a/src/www/syntax-editor/editor_online.js
+++ b/src/www/syntax-editor/editor_online.js
@@ -20,21 +20,38 @@ var editor_options = {
}
if(window.Minibar) // Minibar loaded?
editor_options.lin_action=function(s,langFrom) {
- editor.shutdown();
- var minibar_options = {
- target: "editor",
- show_abstract: true,
- show_trees: true,
- show_grouped_translations: false,
- show_brackets: true,
- word_replacements: true,
- initial_grammar: editor.menu.ui.grammar_menu.value, // hmm
- initial: {
+ var editor=this;
+ var minibar_options = {
+ target: "minibar",
+ show_abstract: true,
+ show_trees: true,
+ show_grouped_translations: false,
+ show_brackets: true,
+ word_replacements: true,
+ initial_grammar: editor.menu.ui.grammar_menu.value, // hmm
+ initial: {
from: langFrom,
input: s.split(" ") // is it that easy?
- }
- }
- editor.minibar=new Minibar(server,minibar_options);
+ },
+ // get us back to the editor!
+ abstract_action: function(tree) {
+ var minibar=this;
+ // how to get hold of new minibar?
+ var editor_options = {
+ target: "editor",
+ initial: {
+ grammar: editor.minibar.grammar_menu.value, // hmm
+ startcat: editor.minibar.input.startcat_menu.value, // hmm
+ abstr: tree
+ }
+ }
+ minibar.hide();
+ minibar.editor.show();
+ }
+ }
+ editor.hide();
+ editor.minibar=new Minibar(server,minibar_options);
+ editor.minibar.editor = editor; // :S
}
if(/^\?\/tmp\//.test(location.search)) {
var args=decodeURIComponent(location.search.substr(1)).split(" ")