Название: Почему бы QSortFilterProxyModel не быть QtCore? Отправлено: Akon от Декабрь 19, 2012, 15:06 Уже QAbstractProxyModel находится в QtGui (QAbstractItemModel в QtCore). По идее, эти компоненты не должны зависеть от гуя. Ну там есть зависимость у QAbstractProxyModel от QItemSelection (QtGui), но и QItemSelection может быть не в гуе модуле.
Это я так, взглянув поверхностно. Просто очередной раз поймал себя на мысли, что хочу написать #include <QtCore/QSortFilterProxyModel> - а тут надо QtGui. Кто разбирался и знает вескую причину, почему эти классы находятся в гуе модуле? И как с этим дела в Qt5? Название: Re: Почему бы QSortFilterProxyModel не быть QtCore? Отправлено: kambala от Декабрь 19, 2012, 15:18 а разве можно модель использовать без гуя? например в консольном приложении.
Название: Re: Почему бы QSortFilterProxyModel не быть QtCore? Отправлено: Bepec от Декабрь 19, 2012, 15:27 Мб будет очевидным, но технология Model-View подразумевает 2 сущности, связанные между собой неразрывно. Model, которая представляет собой данные с интерфейсом и View, который так же связан с моделью и представляет её пользователю.
PS зачем модель без View? Мб вам простой контейнер нужен? Название: Re: Почему бы QSortFilterProxyModel не быть QtCore? Отправлено: Akon от Декабрь 19, 2012, 16:35 Цитировать а разве можно модель использовать без гуя? например в консольном приложении. View - это более широкое понятие, нежели гуй. В частности, консольное представление это тоже View. View часть в кьтовском модел/вью это QAbstractItemView. Проводя параллель к консоли можно иметь QAbstractItemConsoleView, и смысл моего вопроса в том, что прокси модель может быть одной для графического и консольного представления.Название: Re: Почему бы QSortFilterProxyModel не быть QtCore? Отправлено: Bepec от Декабрь 19, 2012, 17:06 Если честно я вас не понимайт :) В консольном представлении модели как таковой не будет. Ибо там нет быстрой смены, резких переходов и прочего. Будет простейшее представление. Нет, даже не так - тупо отображение контейнера данных. Что вам самим мешает написать модель для консоли? Никаких хитрых требования нет, нагрузки как таковой нет.
PS поправьте, если я ошибаюсь Название: Re: Почему бы QSortFilterProxyModel не быть QtCore? Отправлено: Авварон от Декабрь 19, 2012, 19:16 Вы бы из саркофага вылезали бы. В Qt5 прокси и айтем селекшн модел перенесены в corelib/itemmodels. В 4ке это сделать нельзя по понятным причинам сорц и бинари совместимости.
PS: я не знал, но могу хотя бы разжиться инфой что да как. Сделали прикольно. Название: Re: Почему бы QSortFilterProxyModel не быть QtCore? Отправлено: Akon от Декабрь 20, 2012, 08:06 Да, до Qt5 пока руки не дошли. А как она, стабильна? Правильно ли я понял, что зависимость от гуя снята?
Верес: FAR - консольное приложение. Представьте себя архитектором - вам нужно спроектировать модел/вью и на его основе сделать консольную и гиу проги. Где у вас будет прокси-модель? Название: Re: Почему бы QSortFilterProxyModel не быть QtCore? Отправлено: Авварон от Декабрь 20, 2012, 14:25 Нет, не стабильная:) Но, может, под виндой лучше, чем под маком. Крашей вроде нет, но мелких багов сотни.
Название: Re: Почему бы QSortFilterProxyModel не быть QtCore? Отправлено: Bepec от Декабрь 20, 2012, 14:58 Испокон веков делали свои модельки :)
А Far не упоминайте пожалуйста :) Жуткая штука, DN его бил по всем направлениям _) Название: Re: Почему бы QSortFilterProxyModel не быть QtCore? Отправлено: Alex Custov от Декабрь 20, 2012, 15:39 PS зачем модель без View? Модель может давать уникальный функционал, который можно использовать и без view, например (грубо говоря) QFileSystemModel. Название: Re: Почему бы QSortFilterProxyModel не быть QtCore? Отправлено: Bepec от Декабрь 20, 2012, 15:40 Убедили, убедили, я повержен :D
|