rem: this.revisions_list = revisions_list; 
add: this.revisions_list = revisions_list || new Array(); 
context: function Editor( id, notebook_id, note_text, deleted_from, revisions_list, insert_after_iframe_id, read_write, startup, highlight, focus ) {  this.id = id;  this.notebook_id = notebook_id;  this.initial_text = note_text;  this.deleted_from = deleted_from || null;  this.revisions_list = revisions_list;  this.read_write = read_write;  this.startup = startup || false; // whether this Editor is for a startup note  this.init_highlight = highlight || false;  this.init_focus = focus || false;  var iframe_id = "note_" + id;  var self = this;  this.document = null;  this.iframe = createDOM( "iframe", {    "src": "/notebooks/blank_note/" + id,    "frameBorder": "0",    "scrolling": "no",    "id": iframe_id,    "name": iframe_id,    "class": "note_frame"  } );  this.iframe.editor = this;  this.title = null;  if ( read_write ) {    this.delete_button = createDOM( "input", {      "type": "button",      "class": "note_button",      "id": "delete_" + iframe_id,      "value": "delete" + ( this.deleted_from ? " forever" : "" ),      "title": "delete note [ctrl-d]"    } );    connect( this.delete_button, "onclick", function ( event ) { signal( self, "delete_clicked", event ); } );    this.changes_button = createDOM( "input", {      "type": "button",      "class": "note_button",      "id": "changes_" + iframe_id,      "value": "changes",      "title": "previous revisions"    } );    connect( this.changes_button, "onclick", function ( event ) { signal( self, "changes_clicked", event ); } );    if ( this.deleted_from ) {      this.undelete_button = createDOM( "input", {        "type": "button",        "class": "note_button",        "id": "undelete_" + iframe_id,        "value": "undelete",        "title": "undelete note"      } );      connect( this.undelete_button, "onclick", function ( event ) { signal( self, "undelete_clicked", event ); } );    } else {      this.options_button = createDOM( "input", {        "type": "button",        "class": "note_button",        "id": "options_" + iframe_id,        "value": "options",        "title": "note options"      } );      connect( this.options_button, "onclick", function ( event ) { signal( self, "options_clicked", event ); } );    }  }  if ( read_write || !startup ) {    this.hide_button = createDOM( "input", {      "type": "button",      "class": "note_button",      "id": "hide_" + iframe_id,      "value": "hide",      "title": "hide note [ctrl-h]"    } );    connect( this.hide_button, "onclick", function ( event ) { signal( self, "hide_clicked", event ); } );  }  this.note_controls = createDOM( "span", { "class": "note_controls" },    this.delete_button ? this.delete_button : null,    this.delete_button ? " " : null,    this.changes_button ? this.changes_button : null,    this.changes_button ? " " : null,    this.options_button ? this.options_button : null,    this.options_button ? " " : null,    this.undelete_button ? this.undelete_button : null,    this.undelete_button ? " " : null,    this.hide_button ? this.hide_button : null  );  // if an iframe has been given to insert this new editor after, then insert the new editor's  // iframe. otherwise just append the iframe for the new editor  if ( insert_after_iframe_id ) {    insertSiblingNodesAfter( insert_after_iframe_id, this.note_controls );    insertSiblingNodesAfter( this.note_controls, this.iframe );  } else {    appendChildNodes( "notes", this.note_controls );    appendChildNodes( "notes", this.iframe );  }}
meta: 4711	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/4711/20313728d2761dc6cadea964be9f34294c24b700/Editor.js/clean/static/js/Editor.js