summaryrefslogtreecommitdiff
path: root/protocols/Skype/src/skypekit/account.h
blob: 36a78e745bb204bc94b8a9990eda2ccc056467db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#pragma once

#include "common.h"

class CAccount : public Account
{
public:
	typedef void (CSkypeProto::* OnAccountChanged)(int);

	typedef DRef<CAccount, Account> Ref;
	typedef DRefs<CAccount, Account> Refs;
	
	CAccount(unsigned int oid, SERootObject* root);

	bool IsOnline();
	bool SetAvatar(SEBinary avatar, Skype::VALIDATERESULT &result);
	
	void SetOnAccountChangedCallback(OnAccountChanged callback, CSkypeProto* proto);

private:
	Skype *skype;
	CSkypeProto* proto;
	OnAccountChanged callback;
	void OnChange(int prop);
};