correct widget prefer size and box layout item limit size cal
add adapt option when layout
add Update Rect param
boxlayout add empty
hittest ignore visible