1
0
forked from GitHub/gf-core

Syntax editor: return to editor after having switched to minibar

This commit is contained in:
john.j.camilleri
2012-11-23 08:25:00 +00:00
parent 0dac6fc783
commit 3ae7f0df0e
3 changed files with 39 additions and 15 deletions

View File

@@ -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 />

View File

@@ -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));

View File

@@ -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(" ")