summaryrefslogtreecommitdiff
path: root/protocols/Skype/src/skype_subclassing.h
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/Skype/src/skype_subclassing.h')
-rw-r--r--protocols/Skype/src/skype_subclassing.h20
1 files changed, 17 insertions, 3 deletions
diff --git a/protocols/Skype/src/skype_subclassing.h b/protocols/Skype/src/skype_subclassing.h
index 003ce742ea..044c825b68 100644
--- a/protocols/Skype/src/skype_subclassing.h
+++ b/protocols/Skype/src/skype_subclassing.h
@@ -1,7 +1,15 @@
#pragma once
+#undef OCSP_REQUEST
+#undef OCSP_RESPONSE
+
#include <skype-embedded_2.h>
+class CContact;
+struct CSkypeProto;
+
+typedef void (__cdecl CSkypeProto::* OnContactChangeFunc)(CContact*, int);
+
class CContact : public Contact
{
public:
@@ -10,7 +18,7 @@ public:
CContact(unsigned int oid, SERootObject* root);
-protected:
+private:
void OnChange(int prop);
};
@@ -23,7 +31,7 @@ public:
CContact::Refs ContactList;
-protected:
+private:
void OnChange(const ContactRef& contact);
};
@@ -40,7 +48,13 @@ public:
void BlockWhileLoggingIn();
void BlockWhileLoggingOut();
-protected:
+
+ void SetOnChangeCallback(OnContactChangeFunc callback, CSkypeProto* proto);
+
+private:
+ CSkypeProto* proto;
+ OnContactChangeFunc callback;
+
void OnChange(int prop);
};