summaryrefslogtreecommitdiff
path: root/protocols/Skype/src/skype_subclassing.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/Skype/src/skype_subclassing.cpp')
-rw-r--r--protocols/Skype/src/skype_subclassing.cpp27
1 files changed, 26 insertions, 1 deletions
diff --git a/protocols/Skype/src/skype_subclassing.cpp b/protocols/Skype/src/skype_subclassing.cpp
index 10bdecf9d5..2c24252fa7 100644
--- a/protocols/Skype/src/skype_subclassing.cpp
+++ b/protocols/Skype/src/skype_subclassing.cpp
@@ -44,6 +44,11 @@ CMessage* CSkype::newMessage(int oid)
return new CMessage(oid, this);
}
+CTransfer* CSkype::newTransfer(int oid)
+{
+ return new CTransfer(oid, this);
+}
+
CContactSearch* CSkype::newContactSearch(int oid)
{
return new CContactSearch(oid, this);
@@ -479,4 +484,24 @@ void CConversation::SetOnMessageReceivedCallback(OnMessageReceived callback, CSk
// CMessage
-CMessage::CMessage(unsigned int oid, SERootObject* root) : Message(oid, root) { } \ No newline at end of file
+CMessage::CMessage(unsigned int oid, SERootObject* root) : Message(oid, root) { }
+
+// CTransfer
+
+CTransfer::CTransfer(unsigned int oid, SERootObject* root) : Transfer(oid, root)
+{
+ this->proto = NULL;
+ this->transferCallback = NULL;
+}
+
+void CTransfer::SetOnTransferCallback(OnTransfer callback, CSkypeProto* proto)
+{
+ this->proto = proto;
+ this->transferCallback = callback;
+}
+
+void CTransfer::OnChange(int prop)
+{
+ if (this->proto)
+ (proto->*transferCallback)(prop, this->ref());
+} \ No newline at end of file