summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhallgren <hallgren@chalmers.se>2012-11-21 15:07:59 +0000
committerhallgren <hallgren@chalmers.se>2012-11-21 15:07:59 +0000
commit8bd58a02970d3650b5b3efb6298f40529737c2d8 (patch)
treee6bf28a4ef008c69b38f3f985249ab43d119892d
parent051b7b0d21ad8ac1fe42dfd09cd773b48b8fd8ea (diff)
minibar+syntax editor integration, work in progress
-rw-r--r--src/www/minibar/minibar.html7
-rw-r--r--src/www/minibar/minibar_online.js17
-rw-r--r--src/www/minibar/minibar_translations.js12
-rw-r--r--src/www/syntax-editor/editor.css4
-rw-r--r--src/www/syntax-editor/editor.html4
-rw-r--r--src/www/syntax-editor/editor_menu.js2
6 files changed, 37 insertions, 9 deletions
diff --git a/src/www/minibar/minibar.html b/src/www/minibar/minibar.html
index df5bfba3a..e3a6cbdf0 100644
--- a/src/www/minibar/minibar.html
+++ b/src/www/minibar/minibar.html
@@ -3,6 +3,7 @@
<head>
<title>Minibar</title>
<link rel=stylesheet type="text/css" href="minibar.css">
+<link rel=stylesheet type="text/css" href="../syntax-editor/editor.css">
<link rel=author href="http://www.cse.chalmers.se/~hallgren/" title="Thomas Hallgren">
@@ -14,6 +15,7 @@
<body class=minibar>
<h2>Minibar online</h2>
<div id=minibar></div>
+<div id=editor></div>
<noscript>This page doesn't works unless JavaScript is enabled.</noscript>
@@ -25,7 +27,7 @@
&amp; <a href="http://www.grammaticalframework.org:41296/translate/">Translator</a>]
</small>
<small class=modtime>
-HTML <!-- hhmts start -->Last modified: Tue Nov 20 13:38:35 CET 2012 <!-- hhmts end -->
+HTML <!-- hhmts start -->Last modified: Wed Nov 21 15:50:29 CET 2012 <!-- hhmts end -->
</small>
<address>
@@ -35,6 +37,9 @@ HTML <!-- hhmts start -->Last modified: Tue Nov 20 13:38:35 CET 2012 <!-- hhmts
<script type="text/JavaScript" src="minibar_translations.js"></script>
<script type="text/JavaScript" src="minibar_support.js"></script>
<script type="text/JavaScript" src="../js/pgf_online.js"></script>
+<script type="text/javascript" src="../syntax-editor/ast.js"></script>
+<script type="text/javascript" src="../syntax-editor/editor_menu.js"></script>
+<script type="text/javascript" src="../syntax-editor/editor.js"></script>
<script type="text/javascript" src="minibar_online.js"></script>
<script type="text/javascript" src="../gfse/gf_abs.js"></script>
diff --git a/src/www/minibar/minibar_online.js b/src/www/minibar/minibar_online.js
index faeae9a7e..b1c1ad86f 100644
--- a/src/www/minibar/minibar_online.js
+++ b/src/www/minibar/minibar_online.js
@@ -1,4 +1,4 @@
-// minibar_demo.js, assumes that minibar.js and pgf_online.js have been loaded.
+// minibar_online.js, assumes that minibar.js and pgf_online.js have been loaded.
var online_options={
//grammars_url: "http://www.grammaticalframework.org/grammars/",
@@ -19,6 +19,20 @@ var minibar_options= {
try_google: true
}
+/*
+if(window.Editor) // Syntax editor loaded?
+ minibar_options.abstract_action=function(tree) {
+ var editor_options = {
+ target: "editor",
+ initial: { grammar: minibar.grammar_menu.value, // hmm
+ startcat: minibar.input.startcat_menu.value, // hmm
+ ast: tree
+ }
+ }
+ minibar.minibar.style.display="none"
+ minibar.editor=new Editor(server,editor_options)
+ }
+*/
if(/^\?\/tmp\//.test(location.search)) {
var args=decodeURIComponent(location.search.substr(1)).split(" ")
if(args[0]) online_options.grammars_url=args[0];
@@ -31,4 +45,5 @@ else if(window.localStorage) {
var server=pgf_online(online_options);
if(editor_dir) server.add_grammars_url(editor_dir+"/");
+
var minibar=new Minibar(server,minibar_options);
diff --git a/src/www/minibar/minibar_translations.js b/src/www/minibar/minibar_translations.js
index 43b959d3e..db0382d34 100644
--- a/src/www/minibar/minibar_translations.js
+++ b/src/www/minibar/minibar_translations.js
@@ -9,6 +9,7 @@ function Translations(server,opts) {
// Default values for options:
this.options={
show_abstract: false,
+ abstract_action: null, // action when selecting the abstracy syntax tree
show_trees: false, // add buttons to show abstract syntax trees,
// parse trees & word alignment
tree_img_format: "png", // format for trees & alignment images,
@@ -100,12 +101,19 @@ Translations.prototype.show_translations=function(translationResults) {
var t = tra.translations[q];
var lin=t.linearizations;
var tbody=empty("tbody");
- if(options.show_abstract && t.tree)
+ if(options.show_abstract && t.tree) {
+ function abs_act() {
+ self.options.abstract_action(t.tree)
+ }
+ var abs_hdr = options.abstract_action
+ ? button("Abstract",abs_act)
+ : text("Abstract: ")
tbody.appendChild(
- tr([th(text("Abstract: ")),
+ tr([th(abs_hdr),
tdt(node("span",{},[abstree_button(t.tree),
alignment_button(t.tree)]),
t.tree)]));
+ }
for(var i=0;i<lin.length;i++) {
if(lin[i].to==to)
trans.single_translation.push(lin[i].text);
diff --git a/src/www/syntax-editor/editor.css b/src/www/syntax-editor/editor.css
index 8640a819f..1675372f7 100644
--- a/src/www/syntax-editor/editor.css
+++ b/src/www/syntax-editor/editor.css
@@ -1,5 +1,5 @@
-body {
- background: #ccc url("http://cloud.grammaticalframework.org/minibar/brushed-metal.png");
+body.syntax_editor {
+ background: #ccc url("../minibar/brushed-metal.png");
}
.hidden
diff --git a/src/www/syntax-editor/editor.html b/src/www/syntax-editor/editor.html
index bb6b49fa8..36045957c 100644
--- a/src/www/syntax-editor/editor.html
+++ b/src/www/syntax-editor/editor.html
@@ -4,10 +4,10 @@
<meta charset="utf-8">
<link rel="author" href="http://www.grammaticalframework.org/~john/" title="John J. Camilleri">
<title>Syntax Editor</title>
- <link rel="stylesheet" type="text/css" href="http://cloud.grammaticalframework.org/minibar/minibar.css" />
+ <link rel="stylesheet" type="text/css" href="../minibar/minibar.css" />
<link rel="stylesheet" type="text/css" href="editor.css" />
</head>
-<body>
+<body class=syntax_editor>
<h2>Syntax Editor</h2>
<div id="editor"></div>
<noscript>This page doesn't works unless JavaScript is enabled.</noscript>
diff --git a/src/www/syntax-editor/editor_menu.js b/src/www/syntax-editor/editor_menu.js
index e8d39ae37..3d813a79b 100644
--- a/src/www/syntax-editor/editor_menu.js
+++ b/src/www/syntax-editor/editor_menu.js
@@ -82,7 +82,7 @@ EditorMenu.prototype.show_grammarlist=function(dir,grammar_names,dir_count) {
return hasPrefix(dir,"/tmp/gfse.") ? "gfse: "+g : g
}
function opt(g) { return option(glabel(g),dir+g); }
- appendChildren(grammar_menu,map(opt,grammar_names));
+ appendChildren(t.ui.grammar_menu,map(opt,grammar_names));
function pick_first_grammar() {
if(t.timeout) clearTimeout(t.timeout),t.timeout=null;
var grammar0=t.options.initial.grammar;