Вход

Просмотр полной версии : Bug? Нарушение лэйаута для компонентов с rotate!=0 при ресайзинге окна браузера


FSBmipt
27.10.2006, 13:05
Обнаружил неприятный факт, если компоненту прописать rotate!=0, то при ресайзинге окна браузера нарушается лэйаут(если компонент помещен в лэйаут контейнер) для этого компонента.
За демкой далеко ходить не надо (может и баян, конечно, но поиском не нашел) демкой от FlexTeam (http://livedocs.macromedia.com/flex/2/langref/mx/effects/Rotate.html#includeExamplesSummary) попробуйте сделать maximize/minimize окна браузера.
Пока не понятна причина бага, регистрэйшн поинт у компонента не меняется.

etc
27.10.2006, 13:15
Это, наверное, из той же серии, что DragEnter иногда не там, где нужно срабатывает…

__i
27.10.2006, 14:06
я думаю что жук лежит не в rotate, а в эффекте Rotate, или даже не в нем а чуть выше (в его родителях). У эффектов есть такая "фича", сохранять/востанавливать положение объекта после каждой итерации(изменении свойств которые меняет эффект). Ну и тут судя по всему этот Эффект и бочинит (.

Хотя как по мне вообще не логично поведение объектов вложеных в какой либо контейнер при вращении. Они по идее должны "скрыватся"/маскироваться если выхотят за приделы родителя. а не вести себя так как это они делают сейчас.

Даже не сильно колупая можно предположить как у них реализованы некоторые вещи и где ждать жуков

__i
27.10.2006, 15:01
Короче там у них одни бока, как показала практика %)

причем они не относяться к к ротейшену, а просто вылазят при его использовании.


Хотя как по мне вообще не логично поведение объектов вложеных в какой либо контейнер при вращении. Они по идее должны "скрыватся"/маскироваться если выхотят за приделы родителя. а не вести себя так как это они делают сейчас.

типа тут глюк и есть. Если поместить в любой контейнер объект и вращать его то он выходить за рамки контейнера, но если помешенный объект больше самого контейнера (появляется скролл) и опаньки все работает нормально %) ниче не съезжает. Жук выше вероятно в каком нить LayoutManager

FSBmipt
27.10.2006, 15:45
Жук выше вероятно в каком нить LayoutManager

Это вряд ли, LayoutManager посути лишь хранит и управляет очередью компонентом, и дергает их методы валидации, все позиционирование компоненты делают уже сами.

__i
27.10.2006, 18:33
ну суть не в этом, при желании можно отследить по цепочке родителей в каком из вомпонентов появляеться жук, логичнее всего предположить что это UIComponent, хотя может и выше, если есть желание то могешь поискать %)