OSDN Git Service

Version 0.6.155, fix X.Callback.STOP_NOW, working X.Audio @iem9.
[pettanr/clientJs.git] / 0.6.x / js / 20_ui / 11_VBox.js
index d9becca..9c81e5a 100644 (file)
@@ -2,14 +2,17 @@ var XUI_Layout_Vertical = X[ 'UI' ][ 'Layout' ][ 'Vertical' ] = XUI_createLayout
        \r
        name : 'VerticalLayout',\r
        \r
+       /*\r
+        * \r
+        */\r
        overrideAttrsForSelf : {\r
                selectable  : false,\r
-               role        : [ 0,              XUI_Dirty.CLEAN,  XUI_Attr_USER.UINODE, XUI_Attr_Type.INIT_ONLY | XUI_Attr_Type.LIST, 'none,chrome,container' ],\r
-               width       : [ '100%',         XUI_Dirty.LAYOUT, XUI_Attr_USER.LAYOUT, XUI_Attr_Type.LENGTH | XUI_Attr_Type.PERCENT | XUI_Attr_Type.AUTO ],\r
+               role        : [ 0,             XUI_Dirty.CLEAN,  XUI_Attr_USER.UINODE, XUI_Attr_Type.INIT_ONLY | XUI_Attr_Type.LIST, 'none,chrome,container' ],\r
+               width       : [ '100%',        XUI_Dirty.LAYOUT, XUI_Attr_USER.LAYOUT, XUI_Attr_Type.LENGTH | XUI_Attr_Type.PERCENT | XUI_Attr_Type.AUTO ],\r
                height      : [ XUI_Attr_AUTO, XUI_Dirty.LAYOUT, XUI_Attr_USER.LAYOUT, XUI_Attr_Type.LENGTH | XUI_Attr_Type.PERCENT | XUI_Attr_Type.AUTO ],\r
                childWidth  : [ XUI_Attr_AUTO, XUI_Dirty.LAYOUT, XUI_Attr_USER.LAYOUT, XUI_Attr_Type.LENGTH | XUI_Attr_Type.PERCENT | XUI_Attr_Type.AUTO ],\r
                childHeight : [ XUI_Attr_AUTO, XUI_Dirty.LAYOUT, XUI_Attr_USER.LAYOUT, XUI_Attr_Type.LENGTH | XUI_Attr_Type.PERCENT | XUI_Attr_Type.AUTO ],\r
-               gapY        : [ 0,              XUI_Dirty.LAYOUT, XUI_Attr_USER.LAYOUT, XUI_Attr_Type.LENGTH ]\r
+               gapY        : [ 0,             XUI_Dirty.LAYOUT, XUI_Attr_USER.LAYOUT, XUI_Attr_Type.LENGTH ]\r
        },\r
        \r
        overrideAttrsForChild : {\r
@@ -40,7 +43,7 @@ var XUI_Layout_Vertical = X[ 'UI' ][ 'Layout' ][ 'Vertical' ] = XUI_createLayout
                childW         = XUI_AbstractUINode_calcValue( attrs[ data.supportAttrs.childWidth.No ], contentW );\r
                childH         = XUI_AbstractUINode_calcValue( attrs[ data.supportAttrs.childHeight.No ], contentH );\r
                _x             = data.contentL;\r
-               _y             = data.contentT;\r
+               _y             = 0; //data.contentT;\r
 \r
                if( !detectionPhase ) ret = false;\r
 \r
@@ -48,8 +51,9 @@ var XUI_Layout_Vertical = X[ 'UI' ][ 'Layout' ][ 'Vertical' ] = XUI_createLayout
                        _w = 0;\r
                        for( i = 0; i < l; ++i ){\r
                                node = uinodes[ i ];\r
-                               node.calculate( detectionPhase, _x, _y, contentW, childH );\r
+                               node.calculate( detectionPhase, 0, _y, contentW, childH );\r
                                _y += node.boxHeight + gapY;\r
+                               //console.dir( node );\r
                                // 概算のみ\r
                                if( autoW ){\r
                                        if( node.boxWidth !== XUI_Attr_AUTO ){\r
@@ -61,8 +65,8 @@ var XUI_Layout_Vertical = X[ 'UI' ][ 'Layout' ][ 'Vertical' ] = XUI_createLayout
                                        } else {\r
                                                w = 0;\r
                                        };\r
-                                       if( _w < w ) _w = w;                            \r
-                               };      \r
+                                       if( _w < w ) _w = w;\r
+                               };\r
                        };\r
                        _y -= gapY;\r
                } else {\r
@@ -71,11 +75,11 @@ var XUI_Layout_Vertical = X[ 'UI' ][ 'Layout' ][ 'Vertical' ] = XUI_createLayout
 \r
                if( detectionPhase ){\r
                        if( autoW ) data.contentWidth  = _w;\r
-                       if( autoH ) data.contentHeight = _y;\r
-                       _y = data.contentT;\r
+                       if( autoH ) data.contentHeight = _y;// - data.contentT;\r
+                       _y = 0;//data.contentT;\r
                        for( i = 0; i < l; ++i ){\r
                                node = uinodes[ i ];\r
-                               node.calculate( false, _x, _y, data.contentWidth, data.contentHeight );\r
+                               node.calculate( false, 0, _y, data.contentWidth, data.contentHeight );\r
                                _y += node.boxHeight + gapY;\r
                        };\r
                        data.postMesure();\r
@@ -83,17 +87,36 @@ var XUI_Layout_Vertical = X[ 'UI' ][ 'Layout' ][ 'Vertical' ] = XUI_createLayout
                \r
                if( !isNeedsDetection ){\r
                        data.boxX += x;\r
-                       data.boxY += y;                 \r
+                       data.boxY += y;\r
                };\r
                return !ret;\r
        }\r
 });\r
 \r
-X.UI.VBox = X.UI.Box.presets(\r
-       XUI_Layout_Vertical,\r
+var XUI_VBox;\r
+\r
+X.UI.VBox = X.UI.Box.inherits(\r
        'VBox',\r
+       X_Class.NONE,\r
        {\r
-               gapY       : '0.2em',\r
-               childWidth : '100%'\r
-       }\r
-);\r
+               Constructor : function(){\r
+                       var supports;\r
+                       \r
+                       if( !XUI_VBox ){\r
+                               supports = XUI_Attr_createAttrDef( XUI_Box.prototype.supportAttrs, XUI_Layout_Vertical.overrideAttrsForSelf );\r
+                               \r
+                               XUI_VBox = XUI_Box.inherits(\r
+                                                       {\r
+                                                               layout       : XUI_Layout_Vertical,\r
+                                                               supportAttrs : supports,\r
+                                                               attrClass    : XUI_Attr_preset( XUI_Box.prototype.attrClass, supports, {\r
+                                                                               gapY       : '0.2em',\r
+                                                                               childWidth : '100%'\r
+                                                                       } )\r
+                                                       }\r
+                                               );\r
+                       };\r
+                       X_Pair_create( this, XUI_VBox( this, XUI_Layout_Vertical, arguments ) );\r
+               }\r
+       });\r
+\r