if(proxyMode() == Server) {
connect(obj, SIGNAL(objectRenamed(QString, QString)), this, SLOT(objectRenamed(QString, QString)));
- setInitialized(obj);
+ obj->setInitialized();
+ emit objectInitialized(obj);
} else {
- requestInit(obj);
+ if(obj->isInitialized())
+ emit objectInitialized(obj);
+ else
+ requestInit(obj);
}
}
-void SignalProxy::setInitialized(SyncableObject *obj) {
- obj->setInitialized();
- emit objectInitialized(obj);
-}
+// void SignalProxy::setInitialized(SyncableObject *obj) {
+// obj->setInitialized();
+// emit objectInitialized(obj);
+// }
-bool SignalProxy::isInitialized(SyncableObject *obj) const {
- return obj->isInitialized();
-}
+// bool SignalProxy::isInitialized(SyncableObject *obj) const {
+// return obj->isInitialized();
+// }
void SignalProxy::requestInit(SyncableObject *obj) {
- if(proxyMode() == Server || isInitialized(obj))
+ if(proxyMode() == Server || obj->isInitialized())
return;
QVariantList params;
QByteArray block;
QDataStream out(&block, QIODevice::WriteOnly);
out.setVersion(QDataStream::Qt_4_2);
-
+ out << (quint32)0;
+
if(compressed) {
QByteArray rawItem;
QDataStream itemStream(&rawItem, QIODevice::WriteOnly);
rawItem = qCompress(rawItem);
- out << (quint32)rawItem.size() << rawItem;
+ out << rawItem;
} else {
- out << (quint32)0 << item;
- out.device()->seek(0);
- out << (quint32)(block.size() - sizeof(quint32));
+ out << item;
}
+ out.device()->seek(0);
+ out << (quint32)(block.size() - sizeof(quint32));
+
dev->write(block);
}
QByteArray rawItem;
in >> rawItem;
rawItem = qUncompress(rawItem);
-
+
QDataStream itemStream(&rawItem, QIODevice::ReadOnly);
itemStream.setVersion(QDataStream::Qt_4_2);
itemStream >> item;
}
void SignalProxy::setInitData(SyncableObject *obj, const QVariantMap &properties) {
- if(isInitialized(obj))
+ if(obj->isInitialized())
return;
obj->fromVariantMap(properties);
- setInitialized(obj);
+ obj->setInitialized();
+ emit objectInitialized(obj);
invokeSlot(obj, updatedRemotelyId(obj));
}