diff options
Diffstat (limited to 'api/logic/QObjectPtr.h')
-rw-r--r-- | api/logic/QObjectPtr.h | 104 |
1 files changed, 52 insertions, 52 deletions
diff --git a/api/logic/QObjectPtr.h b/api/logic/QObjectPtr.h index 4a42f728..0ff51136 100644 --- a/api/logic/QObjectPtr.h +++ b/api/logic/QObjectPtr.h @@ -8,10 +8,10 @@ namespace details { struct DeleteQObjectLater { - void operator()(QObject *obj) const - { - obj->deleteLater(); - } + void operator()(QObject *obj) const + { + obj->deleteLater(); + } }; } /** @@ -28,56 +28,56 @@ template <typename T> class shared_qobject_ptr { public: - shared_qobject_ptr(){} - shared_qobject_ptr(T * wrap) - { - reset(wrap); - } - shared_qobject_ptr(const shared_qobject_ptr<T>& other) - { - m_ptr = other.m_ptr; - } - template<typename Derived> - shared_qobject_ptr(const shared_qobject_ptr<Derived> &other) - { - m_ptr = other.unwrap(); - } + shared_qobject_ptr(){} + shared_qobject_ptr(T * wrap) + { + reset(wrap); + } + shared_qobject_ptr(const shared_qobject_ptr<T>& other) + { + m_ptr = other.m_ptr; + } + template<typename Derived> + shared_qobject_ptr(const shared_qobject_ptr<Derived> &other) + { + m_ptr = other.unwrap(); + } public: - void reset(T * wrap) - { - using namespace std::placeholders; - m_ptr.reset(wrap, std::bind(&QObject::deleteLater, _1)); - } - void reset(const shared_qobject_ptr<T> &other) - { - m_ptr = other.m_ptr; - } - void reset() - { - m_ptr.reset(); - } - T * get() const - { - return m_ptr.get(); - } - T * operator->() const - { - return m_ptr.get(); - } - T & operator*() const - { - return *m_ptr.get(); - } - operator bool() const - { - return m_ptr.get() != nullptr; - } - const std::shared_ptr <T> unwrap() const - { - return m_ptr; - } + void reset(T * wrap) + { + using namespace std::placeholders; + m_ptr.reset(wrap, std::bind(&QObject::deleteLater, _1)); + } + void reset(const shared_qobject_ptr<T> &other) + { + m_ptr = other.m_ptr; + } + void reset() + { + m_ptr.reset(); + } + T * get() const + { + return m_ptr.get(); + } + T * operator->() const + { + return m_ptr.get(); + } + T & operator*() const + { + return *m_ptr.get(); + } + operator bool() const + { + return m_ptr.get() != nullptr; + } + const std::shared_ptr <T> unwrap() const + { + return m_ptr; + } private: - std::shared_ptr <T> m_ptr; + std::shared_ptr <T> m_ptr; }; |