syntax editor + minibar: fix bug with repeated switching back and forth

By avoiding "this" in callback functions, the code can be kept cleaner.
This commit is contained in:
hallgren
2012-11-23 13:15:16 +00:00
parent 3ae7f0df0e
commit fe9b368b90
3 changed files with 6 additions and 7 deletions

View File

@@ -41,7 +41,6 @@ function Minibar(server,opts) {
/* --- Creating the components of the minibar --------------------------- */
this.translations=new Translations(server,this.options)
this.translations.minibar=this; // ref to parent
this.input=new Input(server,this.translations,this.options)
/* --- Creating user interface elements --------------------------------- */

View File

@@ -103,8 +103,7 @@ Translations.prototype.show_translations=function(translationResults) {
var tbody=empty("tbody");
if(options.show_abstract && t.tree) {
function abs_act() {
var minibar = self.minibar;
bind(self.options.abstract_action,minibar)(t.tree)
self.options.abstract_action(t.tree)
}
var abs_hdr = options.abstract_action
? button("Abstract",abs_act)

View File

@@ -35,7 +35,7 @@ if(window.Minibar) // Minibar loaded?
},
// get us back to the editor!
abstract_action: function(tree) {
var minibar=this;
//var minibar=this;
// how to get hold of new minibar?
var editor_options = {
target: "editor",
@@ -45,13 +45,14 @@ if(window.Minibar) // Minibar loaded?
abstr: tree
}
}
minibar.hide();
minibar.editor.show();
editor.minibar.hide();
editor.show();
}
}
editor.hide();
editor.minibar=new Minibar(server,minibar_options);
editor.minibar.editor = editor; // :S
//editor.minibar.editor = editor; // :S
editor.minibar.show()
}
if(/^\?\/tmp\//.test(location.search)) {
var args=decodeURIComponent(location.search.substr(1)).split(" ")