Re[2]: Организация логирования в многопоточной программе
От: BloodyTux  
Дата: 08.02.10 12:11
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>
CS>dom::element log = ...;
CS>dom::element new_chunk = dom::element::create("text",some_text);
CS>log.append(new_chunk); 
CS>


CS>В зависимости от того как нужно представлять log items: как single lines или как wrapable paragraphs DOM элемент самого log может быть либо <pre> либо <div>.


BT>>2) Как обеспечить "залипания" скроллбара текстового поля к нижнему краю?


CS>
CS>new_chunk.scroll_to_view();
CS>


CS>Замечания:

CS>1) dom::element::scroll_to_view() операция форсирует remeasure поэтому этот вызов нужно делать или по таймеру или по idle.
CS>2) для обращения к GUI из рабочих потоков используется htmlayout::queue.
CS>3) надо как-то ограничивать размер log, скажем тысячью text элементов.
CS>4) Если log в принципе безразмерный то рекомендую virtual grid: htmlayoutsdk/html_samples/grid/virtual-table.htm — он не зависит от количества log items.

Thank you very much!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.