diff options
Diffstat (limited to 'js')
-rw-r--r-- | js/config.js | 17 | ||||
-rw-r--r-- | js/oz.js | 3 | ||||
-rw-r--r-- | js/wwwsqldesigner.js | 19 |
3 files changed, 24 insertions, 15 deletions
diff --git a/js/config.js b/js/config.js index 2f1ddaa..cf314a6 100644 --- a/js/config.js +++ b/js/config.js @@ -1,15 +1,16 @@ var CONFIG = { - AVAILABLE_DBS:["mysql","sqlite","web2py","mssql","postgresql", "oracle", "sqlalchemy", "vfp9"], - DEFAULT_DB:"mysql", + AVAILABLE_DBS: ["mysql","sqlite","web2py","mssql","postgresql", "oracle", "sqlalchemy", "vfp9"], + DEFAULT_DB: "mysql", - AVAILABLE_LOCALES:["en", "fr", "de", "cs", "pl", "pt_BR", "es", "ru", "eo", "ja"], - DEFAULT_LOCALE:"en", + AVAILABLE_LOCALES: ["en", "fr", "de", "cs", "pl", "pt_BR", "es", "ru", "eo", "ja"], + DEFAULT_LOCALE: "en", - AVAILABLE_BACKENDS:["php-mysql","php-blank","php-file","php-sqlite"], - DEFAULT_BACKEND:["php-mysql"], + AVAILABLE_BACKENDS: ["php-mysql","php-blank","php-file","php-sqlite"], + DEFAULT_BACKEND: ["php-mysql"], - RELATION_THICKNESS:2, - RELATION_SPACING:15, + RELATION_THICKNESS: 2, + RELATION_SPACING: 15, + RELATION_COLORS: ["#000","#800","#080","#008","#088","#808","#088"], STATIC_PATH: "", XHR_PATH: "" @@ -1,4 +1,4 @@ -/* (c) 2007 - now() Ondrej Zara, 1.5 */ +/* (c) 2007 - now() Ondrej Zara, 1.6 */ var OZ = { $:function(x) { return typeof(x) == "string" ? document.getElementById(x) : x; }, opera:!!window.opera, @@ -60,6 +60,7 @@ var OZ = { var tmp = function(){}; tmp.prototype = parent.prototype; this.prototype = new tmp(); + this.prototype.constructor = this; return this; }; c.prototype.bind = function(fnc) { return fnc.bind(this); }; diff --git a/js/wwwsqldesigner.js b/js/wwwsqldesigner.js index 9f4d0bb..d57a243 100644 --- a/js/wwwsqldesigner.js +++ b/js/wwwsqldesigner.js @@ -346,7 +346,7 @@ SQL.Row.prototype.destroy = function() { SQL.Row.prototype.toXML = function() { var xml = ""; - var t = this.getTitle().replace(/"/g,"""); + var t = this.getTitle().replace(/"/g,"""); //" var nn = (this.data.nll ? "1" : "0"); var ai = (this.data.ai ? "1" : "0"); xml += '<row name="'+t+'" null="'+nn+'" autoincrement="'+ai+'">\n'; @@ -449,8 +449,9 @@ SQL.Row.prototype.enter = function(e) { /* --------------------------- relation (connector) ----------- */ SQL.Relation = OZ.Class().extend(SQL.Visual); - +SQL.Relation._counter = 0; SQL.Relation.prototype.init = function(owner, row1, row2) { + this.constructor._counter++; this.owner = owner; this.row1 = row1; this.row2 = row2; @@ -461,12 +462,18 @@ SQL.Relation.prototype.init = function(owner, row1, row2) { this.row2.addRelation(this); this.dom = []; + if (CONFIG.RELATION_COLORS) { + var colorIndex = this.constructor._counter - 1; + var color = CONFIG.RELATION_COLORS[colorIndex % CONFIG.RELATION_COLORS.length]; + } else { + var color = "#000"; + } if (this.owner.vector == "svg") { var path = document.createElementNS(this.owner.svgNS, "path"); - path.setAttribute("stroke","black"); - path.setAttribute("stroke-width",CONFIG.RELATION_THICKNESS); - path.setAttribute("fill","none"); + path.setAttribute("stroke", color); + path.setAttribute("stroke-width", CONFIG.RELATION_THICKNESS); + path.setAttribute("fill", "none"); this.owner.dom.svg.appendChild(path); this.dom.push(path); } else if (this.owner.vector == "vml") { @@ -476,7 +483,7 @@ SQL.Relation.prototype.init = function(owner, row1, row2) { curve.to = "0 0"; curve.control1 = "10 10"; curve.control2 = "100 300"; - curve.strokecolor = "#000"; + curve.strokecolor = color; curve.filled = false; this.owner.dom.content.appendChild(curve); this.dom.push(curve); |