Добрый день.Создал свою реализацию QAbstractTableModel (Model) и QSortFilterProxyModel (Proxy). Данные для модели передаю через указатель. Для этого приходится делать следующее:КодC++ (Qt)class ModelWellList : public QAbstractTableModel{public:...void setShareData(const SharedData*);private:...const SharedData* m_data;};Однако и Proxy для работы необходимо знать данные, поэтому обеспечиваю Proxy данными:КодC++ (Qt)class ProxyWellList: public QSortFilterProxyModel{public:...void setSharedData(const SharedData*);private:const SharedData* m_data;Получается следующее. Из основного окна в виджет передаю общие данныеКодC++ (Qt) navigatorWidget->setShareData(&m_data);Затем в виджете указатель передается в модель и проксиКодC++ (Qt) modelWellList->setShareData(m_data); proxyWellList->setSharedData(m_data);Можете предложить более элегантное решение? m_data существует в программе в единственном экземпляре. Как создать "глобальный" указатель для всей программы, который будет доступен в каждом классе?
|