Здравствуйте, гость ( Вход | Регистрация )
Tonal | Дата 11.8.2008, 10:40 |
Я имею в виду, что можно просто объявить OnValueChanged сигналом а те, кому интересно его получать просто конектятся к нему. При этом тип ListenerSlot и член m_Listeners становятся ненужными. | |
Delphist | Дата 11.8.2008, 8:52 |
Кстати, а зачем ты дублируешь Qt-шную систему сигнал/слот с помощью QLinkedList<ListenerSlot>? Сигнал/слот вполне хорошо с этим справляется. Не понял |
|
Tonal | Дата 10.8.2008, 14:05 |
...вопрос как заставить обновляться не все дерево, а только отдельный элемент. Послать OnValueChanged модельке, которая преобразует const СMyClass & в QModelIndex и сгенерирует сигнал dataChanged. Нет? Кстати, а зачем ты дублируешь Qt-шную систему сигнал/слот с помощью QLinkedList<ListenerSlot>? Сигнал/слот вполне хорошо с этим справляется. ![]() |
|
niXman | Дата 8.8.2008, 22:05 |
и кстати нет смысла писать явно inline, т.к. по умолчанию итак все методы класса являются inline Не все. По умолчанию, только те, которые реализованы в декларации класса. |
|
void* | Дата 8.8.2008, 21:21 |
и кстати нет смысла писать явно inline, т.к. по умолчанию итак все методы класса являются inline | |
Litkevich Yuriy | Дата 8.8.2008, 15:06 |
Дерево и модель взаимодействуют автоматически, и достаточно эфективно, ни чего лишнего не гоняется. Тебе надо в твоей модели метод получения данных сделать читай тут |
|
Delphist | Дата 8.8.2008, 13:38 |
что-то я не понял при чем здесь CMyClass, речь вроде о представлении и модели идет? Да, все правильно, но ведь модель будет строится на данных CMyClass |
|
Litkevich Yuriy | Дата 8.8.2008, 13:31 |
что-то я не понял при чем здесь CMyClass, речь вроде о представлении и модели идет? | |
Delphist | Дата 8.8.2008, 12:26 |
У меня есть класс который имеет ряд свойств и содержит внутри себя QHash с объектами того же типа в итоге получается иерархический класс:
Для отображения я использую TreeView и соответственно собственную модель данных наследованную от QAbstractItemModel. Вопрос такой дело в том что когда у моего объекта меняется свойство например m_sName, то для всех m_Listeners генерится OnValueChanged. И нужно чтобы эти изменения сразу отображались в TreeView, вопрос как заставить обновляться не все дерево, только отдельный элемент. Конечно можно было сделать так, но это не очень эффективно: /*прототип*/
|
|
Просмотр темы полностью (откроется в новом окне) | |
![]() |
Текстовая версия | Сейчас: 16.3.2025, 22:44 |