Дублирование gtk дерева

Как я могу использовать представления из файла.ui много раз?

Я загружаю их таким образом

var view_orig = builder.get_object("items_view") as Gtk.TreeView;
var store_orig = builder.get_object("items_store") as Gtk.TreeStore;

но мне нужно создать 10 копий view_orig,

Я пишу это в Вала.

1 ответ

Решение

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

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

Другие вопросы по тегам