Page Menu
Home
Code
Search
Configure Global Search
Log In
Files
F945755
_Builder.js
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
14 KB
Subscribers
None
_Builder.js
View Options
/*
Copyright (c) 2004-2009, The Dojo Foundation All Rights Reserved.
Available via Academic Free License >= 2.1 OR the modified BSD license.
see: http://dojotoolkit.org/license for details
*/
if
(
!
dojo
.
_hasResource
[
"dojox.grid._Builder"
]){
dojo
.
_hasResource
[
"dojox.grid._Builder"
]
=
true
;
dojo
.
provide
(
"dojox.grid._Builder"
);
dojo
.
require
(
"dojox.grid.util"
);
dojo
.
require
(
"dojo.dnd.Moveable"
);
(
function
(){
var
dg
=
dojox
.
grid
;
var
_1
=
function
(
td
){
return
td
.
cellIndex
>=
0
?
td
.
cellIndex
:
dojo
.
indexOf
(
td
.
parentNode
.
cells
,
td
);
};
var
_2
=
function
(
tr
){
return
tr
.
rowIndex
>=
0
?
tr
.
rowIndex
:
dojo
.
indexOf
(
tr
.
parentNode
.
childNodes
,
tr
);
};
var
_3
=
function
(
_4
,
_5
){
return
_4
&&
((
_4
.
rows
||
0
)[
_5
]
||
_4
.
childNodes
[
_5
]);
};
var
_6
=
function
(
_7
){
for
(
var
n
=
_7
;
n
&&
n
.
tagName
!=
"TABLE"
;
n
=
n
.
parentNode
){
}
return
n
;
};
var
_8
=
function
(
_9
,
_a
){
for
(
var
n
=
_9
;
n
&&
_a
(
n
);
n
=
n
.
parentNode
){
}
return
n
;
};
var
_b
=
function
(
_c
){
var
_d
=
_c
.
toUpperCase
();
return
function
(
_e
){
return
_e
.
tagName
!=
_d
;
};
};
var
_f
=
dojox
.
grid
.
util
.
rowIndexTag
;
var
_10
=
dojox
.
grid
.
util
.
gridViewTag
;
dg
.
_Builder
=
dojo
.
extend
(
function
(
_11
){
if
(
_11
){
this
.
view
=
_11
;
this
.
grid
=
_11
.
grid
;
}
},{
view
:
null
,
_table
:
"<table class=\"dojoxGridRowTable\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" role=\"presentation\""
,
getTableArray
:
function
(){
var
_12
=
[
this
.
_table
];
if
(
this
.
view
.
viewWidth
){
_12
.
push
([
" style=\"width:"
,
this
.
view
.
viewWidth
,
";\""
].
join
(
""
));
}
_12
.
push
(
">"
);
return
_12
;
},
generateCellMarkup
:
function
(
_13
,
_14
,
_15
,
_16
){
var
_17
=
[],
_18
;
if
(
_16
){
var
_19
=
_13
.
index
!=
_13
.
grid
.
getSortIndex
()
?
""
:
_13
.
grid
.
sortInfo
>
0
?
"aria-sort=\"ascending\""
:
"aria-sort=\"descending\""
;
if
(
!
_13
.
id
){
_13
.
id
=
this
.
grid
.
id
+
"Hdr"
+
_13
.
index
;
}
_18
=
[
"<th tabIndex=\"-1\" aria-readonly=\"true\" role=\"columnheader\""
,
_19
,
"id=\""
,
_13
.
id
,
"\""
];
}
else
{
var
_1a
=
this
.
grid
.
editable
&&!
_13
.
editable
?
"aria-readonly=\"true\""
:
""
;
_18
=
[
"<td tabIndex=\"-1\" role=\"gridcell\""
,
_1a
];
}
if
(
_13
.
colSpan
){
_18
.
push
(
" colspan=\""
,
_13
.
colSpan
,
"\""
);
}
if
(
_13
.
rowSpan
){
_18
.
push
(
" rowspan=\""
,
_13
.
rowSpan
,
"\""
);
}
_18
.
push
(
" class=\"dojoxGridCell "
);
if
(
_13
.
classes
){
_18
.
push
(
_13
.
classes
,
" "
);
}
if
(
_15
){
_18
.
push
(
_15
,
" "
);
}
_17
.
push
(
_18
.
join
(
""
));
_17
.
push
(
""
);
_18
=
[
"\" idx=\""
,
_13
.
index
,
"\" style=\""
];
if
(
_14
&&
_14
[
_14
.
length
-
1
]
!=
";"
){
_14
+=
";"
;
}
_18
.
push
(
_13
.
styles
,
_14
||
""
,
_13
.
hidden
?
"display:none;"
:
""
);
if
(
_13
.
unitWidth
){
_18
.
push
(
"width:"
,
_13
.
unitWidth
,
";"
);
}
_17
.
push
(
_18
.
join
(
""
));
_17
.
push
(
""
);
_18
=
[
"\""
];
if
(
_13
.
attrs
){
_18
.
push
(
" "
,
_13
.
attrs
);
}
_18
.
push
(
">"
);
_17
.
push
(
_18
.
join
(
""
));
_17
.
push
(
""
);
_17
.
push
(
_16
?
"</th>"
:
"</td>"
);
return
_17
;
},
isCellNode
:
function
(
_1b
){
return
Boolean
(
_1b
&&
_1b
!=
dojo
.
doc
&&
dojo
.
attr
(
_1b
,
"idx"
));
},
getCellNodeIndex
:
function
(
_1c
){
return
_1c
?
Number
(
dojo
.
attr
(
_1c
,
"idx"
))
:-
1
;
},
getCellNode
:
function
(
_1d
,
_1e
){
for
(
var
i
=
0
,
row
;(
row
=
_3
(
_1d
.
firstChild
,
i
));
i
++
){
for
(
var
j
=
0
,
_1f
;(
_1f
=
row
.
cells
[
j
]);
j
++
){
if
(
this
.
getCellNodeIndex
(
_1f
)
==
_1e
){
return
_1f
;
}
}
}
return
null
;
},
findCellTarget
:
function
(
_20
,
_21
){
var
n
=
_20
;
while
(
n
&&
(
!
this
.
isCellNode
(
n
)
||
(
n
.
offsetParent
&&
_10
in
n
.
offsetParent
.
parentNode
&&
n
.
offsetParent
.
parentNode
[
_10
]
!=
this
.
view
.
id
))
&&
(
n
!=
_21
)){
n
=
n
.
parentNode
;
}
return
n
!=
_21
?
n
:
null
;
},
baseDecorateEvent
:
function
(
e
){
e
.
dispatch
=
"do"
+
e
.
type
;
e
.
grid
=
this
.
grid
;
e
.
sourceView
=
this
.
view
;
e
.
cellNode
=
this
.
findCellTarget
(
e
.
target
,
e
.
rowNode
);
e
.
cellIndex
=
this
.
getCellNodeIndex
(
e
.
cellNode
);
e
.
cell
=
(
e
.
cellIndex
>=
0
?
this
.
grid
.
getCell
(
e
.
cellIndex
)
:
null
);
},
findTarget
:
function
(
_22
,
_23
){
var
n
=
_22
;
while
(
n
&&
(
n
!=
this
.
domNode
)
&&
(
!
(
_23
in
n
)
||
(
_10
in
n
&&
n
[
_10
]
!=
this
.
view
.
id
))){
n
=
n
.
parentNode
;
}
return
(
n
!=
this
.
domNode
)
?
n
:
null
;
},
findRowTarget
:
function
(
_24
){
return
this
.
findTarget
(
_24
,
_f
);
},
isIntraNodeEvent
:
function
(
e
){
try
{
return
(
e
.
cellNode
&&
e
.
relatedTarget
&&
dojo
.
isDescendant
(
e
.
relatedTarget
,
e
.
cellNode
));
}
catch
(
x
){
return
false
;
}
},
isIntraRowEvent
:
function
(
e
){
try
{
var
row
=
e
.
relatedTarget
&&
this
.
findRowTarget
(
e
.
relatedTarget
);
return
!
row
&&
(
e
.
rowIndex
==-
1
)
||
row
&&
(
e
.
rowIndex
==
row
.
gridRowIndex
);
}
catch
(
x
){
return
false
;
}
},
dispatchEvent
:
function
(
e
){
if
(
e
.
dispatch
in
this
){
return
this
[
e
.
dispatch
](
e
);
}
return
false
;
},
domouseover
:
function
(
e
){
if
(
e
.
cellNode
&&
(
e
.
cellNode
!=
this
.
lastOverCellNode
)){
this
.
lastOverCellNode
=
e
.
cellNode
;
this
.
grid
.
onMouseOver
(
e
);
}
this
.
grid
.
onMouseOverRow
(
e
);
},
domouseout
:
function
(
e
){
if
(
e
.
cellNode
&&
(
e
.
cellNode
==
this
.
lastOverCellNode
)
&&!
this
.
isIntraNodeEvent
(
e
,
this
.
lastOverCellNode
)){
this
.
lastOverCellNode
=
null
;
this
.
grid
.
onMouseOut
(
e
);
if
(
!
this
.
isIntraRowEvent
(
e
)){
this
.
grid
.
onMouseOutRow
(
e
);
}
}
},
domousedown
:
function
(
e
){
if
(
e
.
cellNode
){
this
.
grid
.
onMouseDown
(
e
);
}
this
.
grid
.
onMouseDownRow
(
e
);
}});
dg
.
_ContentBuilder
=
dojo
.
extend
(
function
(
_25
){
dg
.
_Builder
.
call
(
this
,
_25
);
},
dg
.
_Builder
.
prototype
,{
update
:
function
(){
this
.
prepareHtml
();
},
prepareHtml
:
function
(){
var
_26
=
this
.
grid
.
get
,
_27
=
this
.
view
.
structure
.
cells
;
for
(
var
j
=
0
,
row
;(
row
=
_27
[
j
]);
j
++
){
for
(
var
i
=
0
,
_28
;(
_28
=
row
[
i
]);
i
++
){
_28
.
get
=
_28
.
get
||
(
_28
.
value
==
undefined
)
&&
_26
;
_28
.
markup
=
this
.
generateCellMarkup
(
_28
,
_28
.
cellStyles
,
_28
.
cellClasses
,
false
);
if
(
!
this
.
grid
.
editable
&&
_28
.
editable
){
this
.
grid
.
editable
=
true
;
}
}
}
},
generateHtml
:
function
(
_29
,
_2a
){
var
_2b
=
this
.
getTableArray
(),
v
=
this
.
view
,
_2c
=
v
.
structure
.
cells
,
_2d
=
this
.
grid
.
getItem
(
_2a
);
dojox
.
grid
.
util
.
fire
(
this
.
view
,
"onBeforeRow"
,[
_2a
,
_2c
]);
for
(
var
j
=
0
,
row
;(
row
=
_2c
[
j
]);
j
++
){
if
(
row
.
hidden
||
row
.
header
){
continue
;
}
_2b
.
push
(
!
row
.
invisible
?
"<tr>"
:
"<tr class=\"dojoxGridInvisible\">"
);
for
(
var
i
=
0
,
_2e
,
m
,
cc
,
cs
;(
_2e
=
row
[
i
]);
i
++
){
m
=
_2e
.
markup
;
cc
=
_2e
.
customClasses
=
[];
cs
=
_2e
.
customStyles
=
[];
m
[
5
]
=
_2e
.
format
(
_2a
,
_2d
);
m
[
1
]
=
cc
.
join
(
" "
);
m
[
3
]
=
cs
.
join
(
";"
);
_2b
.
push
.
apply
(
_2b
,
m
);
}
_2b
.
push
(
"</tr>"
);
}
_2b
.
push
(
"</table>"
);
return
_2b
.
join
(
""
);
},
decorateEvent
:
function
(
e
){
e
.
rowNode
=
this
.
findRowTarget
(
e
.
target
);
if
(
!
e
.
rowNode
){
return
false
;
}
e
.
rowIndex
=
e
.
rowNode
[
_f
];
this
.
baseDecorateEvent
(
e
);
e
.
cell
=
this
.
grid
.
getCell
(
e
.
cellIndex
);
return
true
;
}});
dg
.
_HeaderBuilder
=
dojo
.
extend
(
function
(
_2f
){
this
.
moveable
=
null
;
dg
.
_Builder
.
call
(
this
,
_2f
);
},
dg
.
_Builder
.
prototype
,{
_skipBogusClicks
:
false
,
overResizeWidth
:
4
,
minColWidth
:
1
,
update
:
function
(){
if
(
this
.
tableMap
){
this
.
tableMap
.
mapRows
(
this
.
view
.
structure
.
cells
);
}
else
{
this
.
tableMap
=
new
dg
.
_TableMap
(
this
.
view
.
structure
.
cells
);
}
},
generateHtml
:
function
(
_30
,
_31
){
var
_32
=
this
.
getTableArray
(),
_33
=
this
.
view
.
structure
.
cells
;
dojox
.
grid
.
util
.
fire
(
this
.
view
,
"onBeforeRow"
,[
-
1
,
_33
]);
for
(
var
j
=
0
,
row
;(
row
=
_33
[
j
]);
j
++
){
if
(
row
.
hidden
){
continue
;
}
_32
.
push
(
!
row
.
invisible
?
"<tr>"
:
"<tr class=\"dojoxGridInvisible\">"
);
for
(
var
i
=
0
,
_34
,
_35
;(
_34
=
row
[
i
]);
i
++
){
_34
.
customClasses
=
[];
_34
.
customStyles
=
[];
if
(
this
.
view
.
simpleStructure
){
if
(
_34
.
draggable
){
if
(
_34
.
headerClasses
){
if
(
_34
.
headerClasses
.
indexOf
(
"dojoDndItem"
)
==-
1
){
_34
.
headerClasses
+=
" dojoDndItem"
;
}
}
else
{
_34
.
headerClasses
=
"dojoDndItem"
;
}
}
if
(
_34
.
attrs
){
if
(
_34
.
attrs
.
indexOf
(
"dndType='gridColumn_"
)
==-
1
){
_34
.
attrs
+=
" dndType='gridColumn_"
+
this
.
grid
.
id
+
"'"
;
}
}
else
{
_34
.
attrs
=
"dndType='gridColumn_"
+
this
.
grid
.
id
+
"'"
;
}
}
_35
=
this
.
generateCellMarkup
(
_34
,
_34
.
headerStyles
,
_34
.
headerClasses
,
true
);
_35
[
5
]
=
(
_31
!=
undefined
?
_31
:
_30
(
_34
));
_35
[
3
]
=
_34
.
customStyles
.
join
(
";"
);
_35
[
1
]
=
_34
.
customClasses
.
join
(
" "
);
_32
.
push
(
_35
.
join
(
""
));
}
_32
.
push
(
"</tr>"
);
}
_32
.
push
(
"</table>"
);
return
_32
.
join
(
""
);
},
getCellX
:
function
(
e
){
var
n
,
x
=
e
.
layerX
;
if
(
dojo
.
isMoz
){
n
=
_8
(
e
.
target
,
_b
(
"th"
));
x
-=
(
n
&&
n
.
offsetLeft
)
||
0
;
var
t
=
e
.
sourceView
.
getScrollbarWidth
();
if
(
!
dojo
.
_isBodyLtr
()
&&
e
.
sourceView
.
headerNode
.
scrollLeft
<
t
){
x
-=
t
;
}
}
n
=
_8
(
e
.
target
,
function
(){
if
(
!
n
||
n
==
e
.
cellNode
){
return
false
;
}
x
+=
(
n
.
offsetLeft
<
0
?
0
:
n
.
offsetLeft
);
return
true
;
});
return
x
;
},
decorateEvent
:
function
(
e
){
this
.
baseDecorateEvent
(
e
);
e
.
rowIndex
=-
1
;
e
.
cellX
=
this
.
getCellX
(
e
);
return
true
;
},
prepareResize
:
function
(
e
,
mod
){
do
{
var
i
=
_1
(
e
.
cellNode
);
e
.
cellNode
=
(
i
?
e
.
cellNode
.
parentNode
.
cells
[
i
+
mod
]
:
null
);
e
.
cellIndex
=
(
e
.
cellNode
?
this
.
getCellNodeIndex
(
e
.
cellNode
)
:-
1
);
}
while
(
e
.
cellNode
&&
e
.
cellNode
.
style
.
display
==
"none"
);
return
Boolean
(
e
.
cellNode
);
},
canResize
:
function
(
e
){
if
(
!
e
.
cellNode
||
e
.
cellNode
.
colSpan
>
1
){
return
false
;
}
var
_36
=
this
.
grid
.
getCell
(
e
.
cellIndex
);
return
!
_36
.
noresize
&&
_36
.
canResize
();
},
overLeftResizeArea
:
function
(
e
){
if
(
dojo
.
hasClass
(
dojo
.
body
(),
"dojoDndMove"
)){
return
false
;
}
if
(
dojo
.
isIE
){
var
tN
=
e
.
target
;
if
(
dojo
.
hasClass
(
tN
,
"dojoxGridArrowButtonNode"
)
||
dojo
.
hasClass
(
tN
,
"dojoxGridArrowButtonChar"
)){
return
false
;
}
}
if
(
dojo
.
_isBodyLtr
()){
return
(
e
.
cellIndex
>
0
)
&&
(
e
.
cellX
<
this
.
overResizeWidth
)
&&
this
.
prepareResize
(
e
,
-
1
);
}
var
t
=
e
.
cellNode
&&
(
e
.
cellX
<
this
.
overResizeWidth
);
return
t
;
},
overRightResizeArea
:
function
(
e
){
if
(
dojo
.
hasClass
(
dojo
.
body
(),
"dojoDndMove"
)){
return
false
;
}
if
(
dojo
.
isIE
){
var
tN
=
e
.
target
;
if
(
dojo
.
hasClass
(
tN
,
"dojoxGridArrowButtonNode"
)
||
dojo
.
hasClass
(
tN
,
"dojoxGridArrowButtonChar"
)){
return
false
;
}
}
if
(
dojo
.
_isBodyLtr
()){
return
e
.
cellNode
&&
(
e
.
cellX
>=
e
.
cellNode
.
offsetWidth
-
this
.
overResizeWidth
);
}
return
(
e
.
cellIndex
>
0
)
&&
(
e
.
cellX
>=
e
.
cellNode
.
offsetWidth
-
this
.
overResizeWidth
)
&&
this
.
prepareResize
(
e
,
-
1
);
},
domousemove
:
function
(
e
){
if
(
!
this
.
moveable
){
var
c
=
(
this
.
overRightResizeArea
(
e
)
?
"dojoxGridColResize"
:
(
this
.
overLeftResizeArea
(
e
)
?
"dojoxGridColResize"
:
""
));
if
(
c
&&!
this
.
canResize
(
e
)){
c
=
"dojoxGridColNoResize"
;
}
dojo
.
toggleClass
(
e
.
sourceView
.
headerNode
,
"dojoxGridColNoResize"
,(
c
==
"dojoxGridColNoResize"
));
dojo
.
toggleClass
(
e
.
sourceView
.
headerNode
,
"dojoxGridColResize"
,(
c
==
"dojoxGridColResize"
));
if
(
dojo
.
isIE
){
var
t
=
e
.
sourceView
.
headerNode
.
scrollLeft
;
e
.
sourceView
.
headerNode
.
scrollLeft
=
t
;
}
if
(
c
){
dojo
.
stopEvent
(
e
);
}
}
},
domousedown
:
function
(
e
){
if
(
!
this
.
moveable
){
if
((
this
.
overRightResizeArea
(
e
)
||
this
.
overLeftResizeArea
(
e
))
&&
this
.
canResize
(
e
)){
this
.
beginColumnResize
(
e
);
}
else
{
this
.
grid
.
onMouseDown
(
e
);
this
.
grid
.
onMouseOverRow
(
e
);
}
}
},
doclick
:
function
(
e
){
if
(
this
.
_skipBogusClicks
){
dojo
.
stopEvent
(
e
);
return
true
;
}
return
false
;
},
colResizeSetup
:
function
(
e
,
_37
){
var
_38
=
dojo
.
contentBox
(
e
.
sourceView
.
headerNode
);
if
(
_37
){
this
.
lineDiv
=
document
.
createElement
(
"div"
);
var
vw
=
(
dojo
.
position
||
dojo
.
_abs
)(
e
.
sourceView
.
headerNode
,
true
);
var
_39
=
dojo
.
contentBox
(
e
.
sourceView
.
domNode
);
dojo
.
style
(
this
.
lineDiv
,{
top
:
vw
.
y
+
"px"
,
left
:
e
.
clientX
+
"px"
,
height
:
(
_39
.
h
+
_38
.
h
)
+
"px"
});
dojo
.
addClass
(
this
.
lineDiv
,
"dojoxGridResizeColLine"
);
this
.
lineDiv
.
_origLeft
=
e
.
clientX
;
dojo
.
body
().
appendChild
(
this
.
lineDiv
);
}
var
_3a
=
[],
_3b
=
this
.
tableMap
.
findOverlappingNodes
(
e
.
cellNode
);
for
(
var
i
=
0
,
_3c
;(
_3c
=
_3b
[
i
]);
i
++
){
_3a
.
push
({
node
:
_3c
,
index
:
this
.
getCellNodeIndex
(
_3c
),
width
:
_3c
.
offsetWidth
});
}
var
_3d
=
e
.
sourceView
;
var
adj
=
dojo
.
_isBodyLtr
()
?
1
:-
1
;
var
_3e
=
e
.
grid
.
views
.
views
;
var
_3f
=
[];
for
(
var
j
=
_3d
.
idx
+
adj
,
_40
;(
_40
=
_3e
[
j
]);
j
=
j
+
adj
){
_3f
.
push
({
node
:
_40
.
headerNode
,
left
:
window
.
parseInt
(
_40
.
headerNode
.
style
.
left
)});
}
var
_41
=
_3d
.
headerContentNode
.
firstChild
;
var
_42
=
{
scrollLeft
:
e
.
sourceView
.
headerNode
.
scrollLeft
,
view
:
_3d
,
node
:
e
.
cellNode
,
index
:
e
.
cellIndex
,
w
:
dojo
.
contentBox
(
e
.
cellNode
).
w
,
vw
:
_38
.
w
,
table
:
_41
,
tw
:
dojo
.
contentBox
(
_41
).
w
,
spanners
:
_3a
,
followers
:
_3f
};
return
_42
;
},
beginColumnResize
:
function
(
e
){
this
.
moverDiv
=
document
.
createElement
(
"div"
);
dojo
.
style
(
this
.
moverDiv
,{
position
:
"absolute"
,
left
:
0
});
dojo
.
body
().
appendChild
(
this
.
moverDiv
);
dojo
.
addClass
(
this
.
grid
.
domNode
,
"dojoxGridColumnResizing"
);
var
m
=
(
this
.
moveable
=
new
dojo
.
dnd
.
Moveable
(
this
.
moverDiv
));
var
_43
=
this
.
colResizeSetup
(
e
,
true
);
m
.
onMove
=
dojo
.
hitch
(
this
,
"doResizeColumn"
,
_43
);
dojo
.
connect
(
m
,
"onMoveStop"
,
dojo
.
hitch
(
this
,
function
(){
this
.
endResizeColumn
(
_43
);
if
(
_43
.
node
.
releaseCapture
){
_43
.
node
.
releaseCapture
();
}
this
.
moveable
.
destroy
();
delete
this
.
moveable
;
this
.
moveable
=
null
;
dojo
.
removeClass
(
this
.
grid
.
domNode
,
"dojoxGridColumnResizing"
);
}));
if
(
e
.
cellNode
.
setCapture
){
e
.
cellNode
.
setCapture
();
}
m
.
onMouseDown
(
e
);
},
doResizeColumn
:
function
(
_44
,
_45
,
_46
){
var
_47
=
_46
.
l
;
var
_48
=
{
deltaX
:
_47
,
w
:
_44
.
w
+
_47
,
vw
:
_44
.
vw
+
_47
,
tw
:
_44
.
tw
+
_47
};
this
.
dragRecord
=
{
inDrag
:
_44
,
mover
:
_45
,
leftTop
:
_46
};
if
(
_48
.
w
>=
this
.
minColWidth
){
if
(
!
_45
){
this
.
doResizeNow
(
_44
,
_48
);
}
else
{
dojo
.
style
(
this
.
lineDiv
,
"left"
,(
this
.
lineDiv
.
_origLeft
+
_48
.
deltaX
)
+
"px"
);
}
}
},
endResizeColumn
:
function
(
_49
){
if
(
this
.
dragRecord
){
var
_4a
=
this
.
dragRecord
.
leftTop
;
var
_4b
=
dojo
.
_isBodyLtr
()
?
_4a
.
l
:-
_4a
.
l
;
_4b
+=
Math
.
max
(
_49
.
w
+
_4b
,
this
.
minColWidth
)
-
(
_49
.
w
+
_4b
);
if
(
dojo
.
isWebKit
&&
_49
.
spanners
.
length
){
_4b
+=
dojo
.
_getPadBorderExtents
(
_49
.
spanners
[
0
].
node
).
w
;
}
var
_4c
=
{
deltaX
:
_4b
,
w
:
_49
.
w
+
_4b
,
vw
:
_49
.
vw
+
_4b
,
tw
:
_49
.
tw
+
_4b
};
this
.
doResizeNow
(
_49
,
_4c
);
}
dojo
.
destroy
(
this
.
lineDiv
);
dojo
.
destroy
(
this
.
moverDiv
);
dojo
.
destroy
(
this
.
moverDiv
);
delete
this
.
moverDiv
;
this
.
_skipBogusClicks
=
true
;
_49
.
view
.
update
();
this
.
_skipBogusClicks
=
false
;
this
.
grid
.
onResizeColumn
(
_49
.
index
);
},
doResizeNow
:
function
(
_4d
,
_4e
){
_4d
.
view
.
convertColPctToFixed
();
if
(
_4d
.
view
.
flexCells
&&!
_4d
.
view
.
testFlexCells
()){
var
t
=
_6
(
_4d
.
node
);
if
(
t
){
(
t
.
style
.
width
=
""
);
}
}
var
i
,
s
,
sw
,
f
,
fl
;
for
(
i
=
0
;(
s
=
_4d
.
spanners
[
i
]);
i
++
){
sw
=
s
.
width
+
_4e
.
deltaX
;
s
.
node
.
style
.
width
=
sw
+
"px"
;
_4d
.
view
.
setColWidth
(
s
.
index
,
sw
);
}
for
(
i
=
0
;(
f
=
_4d
.
followers
[
i
]);
i
++
){
fl
=
f
.
left
+
_4e
.
deltaX
;
f
.
node
.
style
.
left
=
fl
+
"px"
;
}
_4d
.
node
.
style
.
width
=
_4e
.
w
+
"px"
;
_4d
.
view
.
setColWidth
(
_4d
.
index
,
_4e
.
w
);
_4d
.
view
.
headerNode
.
style
.
width
=
_4e
.
vw
+
"px"
;
_4d
.
view
.
setColumnsWidth
(
_4e
.
tw
);
if
(
!
dojo
.
_isBodyLtr
()){
_4d
.
view
.
headerNode
.
scrollLeft
=
_4d
.
scrollLeft
+
_4e
.
deltaX
;
}
}});
dg
.
_TableMap
=
dojo
.
extend
(
function
(
_4f
){
this
.
mapRows
(
_4f
);
},{
map
:
null
,
mapRows
:
function
(
_50
){
var
_51
=
_50
.
length
;
if
(
!
_51
){
return
;
}
this
.
map
=
[];
var
row
;
for
(
var
k
=
0
;(
row
=
_50
[
k
]);
k
++
){
this
.
map
[
k
]
=
[];
}
for
(
var
j
=
0
;(
row
=
_50
[
j
]);
j
++
){
for
(
var
i
=
0
,
x
=
0
,
_52
,
_53
,
_54
;(
_52
=
row
[
i
]);
i
++
){
while
(
this
.
map
[
j
][
x
]){
x
++
;
}
this
.
map
[
j
][
x
]
=
{
c
:
i
,
r
:
j
};
_54
=
_52
.
rowSpan
||
1
;
_53
=
_52
.
colSpan
||
1
;
for
(
var
y
=
0
;
y
<
_54
;
y
++
){
for
(
var
s
=
0
;
s
<
_53
;
s
++
){
this
.
map
[
j
+
y
][
x
+
s
]
=
this
.
map
[
j
][
x
];
}
}
x
+=
_53
;
}
}
},
dumpMap
:
function
(){
for
(
var
j
=
0
,
row
,
h
=
""
;(
row
=
this
.
map
[
j
]);
j
++
,
h
=
""
){
for
(
var
i
=
0
,
_55
;(
_55
=
row
[
i
]);
i
++
){
h
+=
_55
.
r
+
","
+
_55
.
c
+
" "
;
}
}
},
getMapCoords
:
function
(
_56
,
_57
){
for
(
var
j
=
0
,
row
;(
row
=
this
.
map
[
j
]);
j
++
){
for
(
var
i
=
0
,
_58
;(
_58
=
row
[
i
]);
i
++
){
if
(
_58
.
c
==
_57
&&
_58
.
r
==
_56
){
return
{
j
:
j
,
i
:
i
};
}
}
}
return
{
j
:-
1
,
i
:-
1
};
},
getNode
:
function
(
_59
,
_5a
,
_5b
){
var
row
=
_59
&&
_59
.
rows
[
_5a
];
return
row
&&
row
.
cells
[
_5b
];
},
_findOverlappingNodes
:
function
(
_5c
,
_5d
,
_5e
){
var
_5f
=
[];
var
m
=
this
.
getMapCoords
(
_5d
,
_5e
);
for
(
var
j
=
0
,
row
;(
row
=
this
.
map
[
j
]);
j
++
){
if
(
j
==
m
.
j
){
continue
;
}
var
rw
=
row
[
m
.
i
];
var
n
=
(
rw
?
this
.
getNode
(
_5c
,
rw
.
r
,
rw
.
c
)
:
null
);
if
(
n
){
_5f
.
push
(
n
);
}
}
return
_5f
;
},
findOverlappingNodes
:
function
(
_60
){
return
this
.
_findOverlappingNodes
(
_6
(
_60
),
_2
(
_60
.
parentNode
),
_1
(
_60
));
}});
})();
}
File Metadata
Details
Attached
Mime Type
text/html
Expires
Sat, Apr 26, 03:42 (4 d, 2 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
26277
Default Alt Text
_Builder.js (14 KB)
Attached To
rZEDHG ZedLegacy
Event Timeline
Log In to Comment