diff options
author | Derrell Lipman <derrell@samba.org> | 2006-12-30 05:09:59 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:30:29 -0500 |
commit | 1170417ceeb8c49a46cda522a38eaa71c9cae30c (patch) | |
tree | dbf4c3fdcdb1af928dbd55f642ea40f00d09283a /webapps/qooxdoo-0.6.3-sdk/frontend/framework/source/class/qx/ui/layout/DockLayout.js | |
parent | 23ccdca41670085da4486841b0d4900b4c8b02f3 (diff) | |
download | samba-1170417ceeb8c49a46cda522a38eaa71c9cae30c.tar.gz samba-1170417ceeb8c49a46cda522a38eaa71c9cae30c.tar.bz2 samba-1170417ceeb8c49a46cda522a38eaa71c9cae30c.zip |
r20414: Start to make SWAT usable by others. This is just a start...
(This used to be commit 26a34037a7ca6fbd05c5a6f7c2d5973e34bc6918)
Diffstat (limited to 'webapps/qooxdoo-0.6.3-sdk/frontend/framework/source/class/qx/ui/layout/DockLayout.js')
-rw-r--r-- | webapps/qooxdoo-0.6.3-sdk/frontend/framework/source/class/qx/ui/layout/DockLayout.js | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/webapps/qooxdoo-0.6.3-sdk/frontend/framework/source/class/qx/ui/layout/DockLayout.js b/webapps/qooxdoo-0.6.3-sdk/frontend/framework/source/class/qx/ui/layout/DockLayout.js new file mode 100644 index 0000000000..7002036e5f --- /dev/null +++ b/webapps/qooxdoo-0.6.3-sdk/frontend/framework/source/class/qx/ui/layout/DockLayout.js @@ -0,0 +1,116 @@ +/* ************************************************************************ + + qooxdoo - the new era of web development + + http://qooxdoo.org + + Copyright: + 2004-2006 by 1&1 Internet AG, Germany, http://www.1and1.org + + License: + LGPL 2.1: http://www.gnu.org/licenses/lgpl.html + + Authors: + * Sebastian Werner (wpbasti) + * Andreas Ecker (ecker) + +************************************************************************ */ + +/* ************************************************************************ + +#module(ui_layout) + +************************************************************************ */ + +qx.OO.defineClass("qx.ui.layout.DockLayout", qx.ui.core.Parent, +function() { + qx.ui.core.Parent.call(this); +}); + +/*! + The layout mode (in which order the children should be layouted) +*/ +qx.OO.addProperty({ name : "mode", type : "string", defaultValue : "vertical", possibleValues : [ "vertical", "horizontal", "ordered" ], addToQueueRuntime : true }); + +/* + Overwrite from qx.ui.core.Widget, we do not support 'auto' and 'flex' +*/ +qx.OO.changeProperty({ name : "width", addToQueue : true, unitDetection : "pixelPercent" }); +qx.OO.changeProperty({ name : "minWidth", defaultValue : -Infinity, addToQueue : true, unitDetection : "pixelPercent" }); +qx.OO.changeProperty({ name : "minWidth", defaultValue : -Infinity, addToQueue : true, unitDetection : "pixelPercent" }); +qx.OO.changeProperty({ name : "height", addToQueue : true, unitDetection : "pixelPercent" }); +qx.OO.changeProperty({ name : "minHeight", defaultValue : -Infinity, addToQueue : true, unitDetection : "pixelPercent" }); +qx.OO.changeProperty({ name : "minHeight", defaultValue : -Infinity, addToQueue : true, unitDetection : "pixelPercent" }); + + + + + + +/* +--------------------------------------------------------------------------- + INIT LAYOUT IMPL +--------------------------------------------------------------------------- +*/ + +/*! + This creates an new instance of the layout impl this widget uses +*/ +qx.Proto._createLayoutImpl = function() { + return new qx.renderer.layout.DockLayoutImpl(this); +} + + + + +/* +--------------------------------------------------------------------------- + ENHANCED CHILDREN FEATURES +--------------------------------------------------------------------------- +*/ + +/*! + Add multiple childrens and make them left aligned +*/ +qx.Proto.addLeft = function() { + this._addAlignedHorizontal("left", arguments); +} + +/*! + Add multiple childrens and make them right aligned +*/ +qx.Proto.addRight = function() { + this._addAlignedHorizontal("right", arguments); +} + +/*! + Add multiple childrens and make them top aligned +*/ +qx.Proto.addTop = function() { + this._addAlignedVertical("top", arguments); +} + +/*! + Add multiple childrens and make them bottom aligned +*/ +qx.Proto.addBottom = function() { + this._addAlignedVertical("bottom", arguments); +} + +qx.Proto._addAlignedVertical = function(vAlign, vArgs) +{ + for (var i=0, l=vArgs.length; i<l; i++) { + vArgs[i].setVerticalAlign(vAlign); + } + + this.add.apply(this, vArgs); +} + +qx.Proto._addAlignedHorizontal = function(vAlign, vArgs) +{ + for (var i=0, l=vArgs.length; i<l; i++) { + vArgs[i].setHorizontalAlign(vAlign); + } + + this.add.apply(this, vArgs); +} |