Mercurial > octave
diff libgui/src/news-reader.h @ 27620:45bb5bbaf291
don't use singleton pattern for resource manager in GUI
Move ownership of the resource_manager object to the base_qobject
class. Store reference to resource_manager object as a member
variable in most objects that need to access it. Eliminate static
member functions in resource_managar class. Provide a
get_resource_manager method in the base_qboject class and a
global __get_resource_manager__ function for those instances where we
can't easily provide local access to the resource_manager object.
There are many changes to many files, but most are straightforward.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 01 Nov 2019 18:16:49 -0400 |
parents | f6b729077ebd |
children | 8b6e928e0705 |
line wrap: on
line diff
--- a/libgui/src/news-reader.h Sat Nov 02 15:24:14 2019 -0400 +++ b/libgui/src/news-reader.h Fri Nov 01 18:16:49 2019 -0400 @@ -29,16 +29,19 @@ namespace octave { + class resource_manager; + class news_reader : public QObject { Q_OBJECT public: - news_reader (const QString& base_url, const QString& page, - int serial = -1, bool connect_to_web = false) - : QObject (), m_base_url (base_url), m_page (page), m_serial (serial), - m_connect_to_web (connect_to_web) + news_reader (resource_manager& rmgr, const QString& base_url, + const QString& page, int serial = -1, + bool connect_to_web = false) + : QObject (), m_resource_manager (rmgr), m_base_url (base_url), + m_page (page), m_serial (serial), m_connect_to_web (connect_to_web) { } signals: @@ -53,6 +56,8 @@ private: + resource_manager& m_resource_manager; + QString m_base_url; QString m_page; int m_serial;