+void SignalProxy::removePeerBySender() {
+ // OK we're brutal here... but since it's a private slot we know what we've got connected to it...
+ QIODevice *ioDev = (QIODevice *)(sender());
+ removePeer(ioDev);
+ qDebug() << "Client disconnected.";
+}
+
+void SignalProxy::objectRenamed(const QString &newname, const QString &oldname) {
+ const QMetaObject *meta = sender()->metaObject();
+ const QByteArray className(meta->className());
+ objectRenamed(className, newname, oldname);
+
+ if(proxyMode() == Client)
+ return;
+
+ QVariantList params;
+ params << "__objectRenamed__" << className << newname << oldname;
+ dispatchSignal(RpcCall, params);
+}
+
+void SignalProxy::objectRenamed(const QByteArray &classname, const QString &newname, const QString &oldname) {
+ if(_syncSlave.contains(classname) && _syncSlave[classname].contains(oldname) && oldname != newname) {
+ SyncableObject *obj = _syncSlave[classname][newname] = _syncSlave[classname].take(oldname);
+ requestInit(obj);
+ }
+}
+