OSDN Git Service

Version 0.6.141, fix X.UI.ScrollBox.
[pettanr/clientJs.git] / 0.6.x / js / 20_ui / 13_TileBox.js
index 3856e9c..f0efbaa 100644 (file)
@@ -1,15 +1,15 @@
-X.UI.Layout.Tile = X.UI.Layout.create( {       \r
+var XUI_Layout_Tile = X[ 'UI' ][ 'Layout' ][ 'Tile' ] = XUI_createLayout( {    \r
        name : 'TileLayout',\r
        \r
        overrideAttrsForSelf : {\r
                selectable  : false,\r
-               role        : [ 0,     X.UI.Dirty.CLEAN,  X.UI.Attr.USER.UINODE, X.UI.Attr.Type.INIT_ONLY | X.UI.Attr.Type.LIST, 'none,chrome,container' ],\r
-               childWidth  : [ '8em', X.UI.Dirty.LAYOUT, X.UI.Attr.USER.LAYOUT, X.UI.Attr.Type.LENGTH | X.UI.Attr.Type.PERCENT ],\r
-               childHeight : [ '8em', X.UI.Dirty.LAYOUT, X.UI.Attr.USER.LAYOUT, X.UI.Attr.Type.LENGTH | X.UI.Attr.Type.PERCENT ],\r
-               gapX        : [ 0,     X.UI.Dirty.LAYOUT, X.UI.Attr.USER.LAYOUT, X.UI.Attr.Type.LENGTH ],\r
-               gapY        : [ 0,     X.UI.Dirty.LAYOUT, X.UI.Attr.USER.LAYOUT, X.UI.Attr.Type.LENGTH ],\r
-               hCenter     : [ true,  X.UI.Dirty.LAYOUT, X.UI.Attr.USER.LAYOUT, X.UI.Attr.Type.BOOLEAN ],\r
-               vCenter     : [ true,  X.UI.Dirty.LAYOUT, X.UI.Attr.USER.LAYOUT, X.UI.Attr.Type.BOOLEAN ]\r
+               role        : [ 0,     XUI_Dirty.CLEAN,  XUI_Attr_USER.UINODE, XUI_Attr_Type.INIT_ONLY | XUI_Attr_Type.LIST, 'none,chrome,container' ],\r
+               childWidth  : [ '8em', XUI_Dirty.LAYOUT, XUI_Attr_USER.LAYOUT, XUI_Attr_Type.LENGTH | XUI_Attr_Type.PERCENT ],\r
+               childHeight : [ '8em', XUI_Dirty.LAYOUT, XUI_Attr_USER.LAYOUT, XUI_Attr_Type.LENGTH | XUI_Attr_Type.PERCENT ],\r
+               gapX        : [ 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
+               hCenter     : [ true,  XUI_Dirty.LAYOUT, XUI_Attr_USER.LAYOUT, XUI_Attr_Type.BOOLEAN ],\r
+               vCenter     : [ true,  XUI_Dirty.LAYOUT, XUI_Attr_USER.LAYOUT, XUI_Attr_Type.BOOLEAN ]\r
        },\r
        \r
        overrideAttrsForChild : {\r
@@ -29,7 +29,7 @@ X.UI.Layout.Tile = X.UI.Layout.create( {
 \r
                data.preMesure( w, h );\r
                \r
-               if( isNeedsDetection && ( data.boxWidth === X.UI.Attr.AUTO || data.boxHeight === X.UI.Attr.AUTO ) ) return;\r
+               if( isNeedsDetection && ( data.boxWidth === XUI_Attr_AUTO || data.boxHeight === XUI_Attr_AUTO ) ) return;\r
                \r
                if( ( uinodes  = data.uinodes ) && ( l = uinodes.length ) ){\r
                        _x      = data.contentL;\r
@@ -39,8 +39,8 @@ X.UI.Layout.Tile = X.UI.Layout.create( {
                        gapY    = XUI_AbstractUINode_calcValue( attrs[ data.supportAttrs.gapY.No ], contentH );\r
                        childW  = XUI_AbstractUINode_calcValue( attrs[ data.supportAttrs.childWidth.No ], contentW );\r
                        childH  = XUI_AbstractUINode_calcValue( attrs[ data.supportAttrs.childHeight.No ], contentH );\r
-                       numH    = X.UI.Attr.FLOOR( ( _w + gapX ) / ( childW + gapX ) );\r
-                       numV    = l % numH ? X.UI.Attr.FLOOR( l / numH ) + 1 : l / numH;\r
+                       numH    = XUI_Attr_FLOOR( ( _w + gapX ) / ( childW + gapX ) );\r
+                       numV    = l % numH ? XUI_Attr_FLOOR( l / numH ) + 1 : l / numH;\r
                        _h      = _y + data.contentB + ( childH + gapY ) * numH - gapY;\r
                        \r
                        startX  = attrs[ data.supportAttrs.hCenter.No ] ?\r
@@ -64,18 +64,23 @@ X.UI.Layout.Tile = X.UI.Layout.create( {
                        data.contentHeight = _h;\r
                        \r
                } else\r
-               if( data.contentHeight === X.UI.Attr.AUTO ){\r
-                       data.contentHeight = data.minContentHeight !== X.UI.Attr.AUTO ? data.minContentHeight : 0;\r
+               if( data.contentHeight === XUI_Attr_AUTO ){\r
+                       data.contentHeight = data.minContentHeight !== XUI_Attr_AUTO ? data.minContentHeight : 0;\r
                };\r
                \r
                data.postMesure();\r
-               data.updateLayout( x + data.boxX, y + data.boxY );\r
+\r
+               if( !isNeedsDetection ){\r
+                       data.boxX += x;\r
+                       data.boxY += y;                 \r
+               };\r
+               return true;\r
        }\r
 });\r
 \r
 X.UI.TileBox = X.UI.Box.presets(\r
        'TileBox',\r
-       X.UI.Layout.Tile,\r
+       XUI_Layout_Tile,\r
        {\r
                gapX    : '0.2em',\r
                gapY    : '0.2em',\r