/* --------------------- table manager ------------ */ SQL.TableManager = function(owner) { this.owner = owner; this.dom = { container:OZ.$("table"), name:OZ.$("tablename"), comment:OZ.$("tablecomment") }; this.selection = []; this.adding = false; var ids = ["addtable","removetable","aligntables","cleartables","addrow","edittable","tablekeys"]; for (var i=0;i 1) { this.dom.removetable.value = _("removetables"); } } else { this.dom.removetable.disabled = true; this.dom.removetable.value = _("removetable"); } for (var i=0;i=x && tx=x && tx1x1)) && ((ty>=y && ty=y && ty1y1))) { this.selection.push(t); } } this.processSelection(); } SQL.TableManager.prototype.click = function(e) { /* finish adding new table */ var newtable = false; if (this.adding) { this.adding = false; OZ.DOM.removeClass("area","adding"); this.dom.addtable.value = this.oldvalue; var scroll = OZ.DOM.scroll(); var x = e.clientX + scroll[0]; var y = e.clientY + scroll[1]; newtable = this.owner.addTable(_("newtable"),x,y); var r = newtable.addRow("id",{ai:true}); var k = newtable.addKey("PRIMARY",""); k.addRow(r); } this.select(newtable); this.owner.rowManager.select(false); if (this.selection.length == 1) { this.edit(e); } } SQL.TableManager.prototype.preAdd = function(e) { /* click add new table */ if (this.adding) { this.adding = false; OZ.DOM.removeClass("area","adding"); this.dom.addtable.value = this.oldvalue; } else { this.adding = true; OZ.DOM.addClass("area","adding"); this.oldvalue = this.dom.addtable.value; this.dom.addtable.value = "["+_("addpending")+"]"; } } SQL.TableManager.prototype.clear = function(e) { /* remove all tables */ if (!this.owner.tables.length) { return; } var result = confirm(_("confirmall")+" ?"); if (!result) { return; } this.owner.clearTables(); } SQL.TableManager.prototype.remove = function(e) { var titles = this.selection.slice(0); for (var i=0;i