LINUX.ORG.RU

GtkTreeStore, скорость отрисовки


0

0

Есть ли какой-либо способ обновлять GtkTreeStore(или может какой еще виджет) по-быстрому, ну раз 10 в секунду, чтоб загрузка цпу была не больше 5%, cpu - i686. ну ченить побыстрей, чтоб циферки отрисовывались.

★★

или может другой ТК со списками, способными быстро перерисовываться, и возможностью редактировать содержание ячеек.

no1sm ★★
() автор топика

GtkTreeView это очень медленный виджет если обновлять информацию целиком. Если же не добавлять новых строк, а только использовать gtk_tree_store_set, то дело пойдет быстрее. Еще есть в gtk 2.4 есть функция gtk_cell_renderer_text_set_fixed_height_from_font (), которая позволяет ускорить отображения GtkTreeStore.

Но вобщем, это в любом случае не будет решением. Подумайте, нужен ли Вам такой навороченный виджет, как GtkTreeView, поддерживающий редактирование информации и кучу-кучу всего. Может, Вам нужно что-то другое, более быстрое? Напишите подробенее, какую информацию нужно отображать и что с ней делать.

anonymous
()
Ответ на: комментарий от no1sm

Ну как можно редактировать то, что изменяется 10 раз в секунду?

anonymous
()
Ответ на: комментарий от anonymous

отображать нужно двойное дерево, с 4-5 колонками, содержашими разные числа, обновляющиеся несколько раз в секунду, несколько первых колонок должны иметь возможность редактирования, название и пара чисел. также нужна возможность множественного выделения..я бы рад заменить этот виджет на какой-нибудь другой, но какой?? еще в гтк неудобная штука, если начал редактировать ячайку, то при обновлении теряестся состояние редактирования.

no1sm ★★
() автор топика
Ответ на: комментарий от no1sm

Так вот про это речь и идет, нужны какие-то другие идеи по интерфейсу. А то получается, что пользователь редактирует совсем не то, что видит. Значит, редактировать нужно значения именно, или названия?

anonymous
()
Ответ на: комментарий от no1sm

была еще идея рисовать эту таблицу в xterm'e, но хотелось бы решить эту проблему средствами гтк или другим тоолкитом

no1sm ★★
() автор топика

а по-моему юзер не сможет со скоростью 10 раз/с реагировать на информацию... ну да ладно...

в таких случаях обычно делают виджету hide. меняют что надо, а потом show. но тут не поможет...

Pi ★★★★★
()
Ответ на: комментарий от no1sm

Да делается все это, нужно только подумать как интерфейс организовать. А какой порядок количества ячеек?

anonymous
()
Ответ на: комментарий от anonymous

ну ячеек видимых штук 6 меняющихся, ну и 5 статичных, из которух 3 редактируемые, а строчек может много быть(ну 50)...

no1sm ★★
() автор топика
Ответ на: комментарий от anonymous

решил проблему - использую fox-toolkit

no1sm ★★
() автор топика

Всё намного проще. Нужно перед добавлением кучи записей отключить модель от виджета а потом подключить. :) Только не забудьте сделать g_object_ref модели перед отключением и g_object_unref после переподключения.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.