libsolidcontrol
frontendobject.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include "frontendobject_p.h"
00021
00022 #include <QtCore/QObject>
00023
00024 Solid::Control::FrontendObjectPrivate::FrontendObjectPrivate(QObject *parent)
00025 : m_parent(parent), m_backendObject(0)
00026 {
00027 }
00028
00029 Solid::Control::FrontendObjectPrivate::~FrontendObjectPrivate()
00030 {
00031 }
00032
00033 QObject *Solid::Control::FrontendObjectPrivate::parent() const
00034 {
00035 return m_parent;
00036 }
00037
00038 QObject *Solid::Control::FrontendObjectPrivate::backendObject() const
00039 {
00040 return m_backendObject;
00041 }
00042
00043 void Solid::Control::FrontendObjectPrivate::setBackendObject(QObject *object)
00044 {
00045 if (m_backendObject)
00046 {
00047 QObject::disconnect(m_parent, 0, m_backendObject, 0);
00048 m_backendObject->disconnect(m_parent);
00049 }
00050
00051 m_backendObject = object;
00052
00053 if (m_backendObject)
00054 {
00055 QObject::connect(m_backendObject, SIGNAL(destroyed(QObject *)),
00056 m_parent, SLOT(_k_destroyed(QObject *)));
00057 }
00058 }
00059
00060 void Solid::Control::FrontendObjectPrivate::_k_destroyed(QObject *object)
00061 {
00062 if (m_backendObject == object) {
00063 m_backendObject = 0;
00064 }
00065 }