четверг, 20 мая 2010 г.

GUI system ver.2

собственно переписано все ядро
обновление данных происходит только на сеттерах, то есть в общем цикле обновлении данных, буферы не трогаются и соответственно гуи не кого не нагружает )) но как только понадобиться обновить какой то контрол, срабатывает метод обновления только этого контрола в буфере, однако если произойдет увеличение одного из контроллов ( например в тексте добавились новые символы ) происходит пересборка буфера, с учетом новых данных

рантайм полностью свободен ! в рантайме даже update не вызывается у контролов ! если нужно контрол обновлять каждый кадр его можно подписать на событие EnterFrame и в handlere обновлять как душе удобно …

вобщем давно меня мучающая фигня исправлена

да и я опять сел за движок )) после длительного перерыва …

UPD было принято решение, введения понятия StaticText и DynamicText смысл такой
- StaticText при переполнении заданного количества символов заставляет GUISystem пересобрать весь !!! текстовый буфер ( что конечно в наличии большого количества строк даст лаг ( однако пересобрка произойдет только ОДИН раз на превышение maxChar )
- DynamicText же рендериться вобще отдельно от общей схемы, а именно он попадает в категорию контроллов которые рендерят себя сами … соответственно мы получаем профит на статический строках ( кстати можно статик строке задать например 10 символов и в этом диапазоне играть, тогда профит статика будет сохраняться ) и получаем возможность создать строку с заведомо неизвестным количеством символов !

так же в категорию Extended попадают контроллы аля - скроллер комбобокс так же могут обычные контроллы перейти в категорию Extended для этого не нада не чего делать достаточно задать контроллу маску или другое спец свойство ))

пока что dynamic/extended готовы на уровне двига и пока что развиваться и выводиться для пользования не будут, так как на данный момент есть куча других более важных вещей )) однако вывести весь функционал на ружу для удобного пользования, не займет много времени ! ))) так что как только понадобиться что то из этого, так сразу будет сделано - пока что весь текст - Static с завышенным maxChar )))


2014
найти бы еще теперь исходники этого ) правда за это время написан уже другой 2д двиг ) так что надобности особо в этом нету