Я переношу приложение из доморощенного пользовательского интерфейса в Qt. Одним из наиболее важных элементов управления является панель свойств, которая берет объект, который реализует интерфейс API моего отражения и выплевывает диалоговое окно, содержащее редакторы для всех свойств.
Я написал реализацию QAbstractItemModel
для своей системы свойств и написал несколько обработчиков для различных типов внутри QTableView
. Я также написал QItemDelegate
для создания редакторов для свойств.
Беда в том, что я бы хотел, чтобы редакторы зависали, а не были просто всплывающими окнами. Это сделано для того, чтобы они могли обрабатывать рендеринг свойства, требовать меньше щелчков для работы, а также не исчезать, как только что-то получает фокус, например, моя кнопка цвета - редактор (в котором есть слоты, слушающие изменения цвета) исчезает как только появляется диалоговое окно выбора цвета, это означает, что ничего не происходит, чтобы прослушать изменения.
Я не могу найти какие-либо варианты сохранения редакторов. Я лаю здесь не то дерево или есть более подходящий способ сделать это? Я пытался делать вещи «Qt», но я уже бью кирпичные стены.
Спасибо