summaryrefslogtreecommitdiff
path: root/protocols/Skype/src/skype_chat.h
diff options
context:
space:
mode:
authorAlexander Lantsev <aunsane@gmail.com>2013-06-10 19:42:11 +0000
committerAlexander Lantsev <aunsane@gmail.com>2013-06-10 19:42:11 +0000
commit4adc7e198f49bbd5b39141f13322b653402c8a79 (patch)
tree6f0be5aa2527a9ab1aa9f2966dc17b033847641c /protocols/Skype/src/skype_chat.h
parentcdf4d005c67b8b5ef62170ccd4fdd29579965d9c (diff)
Skype:
- fixed chat role updating - fixed chat commands git-svn-id: http://svn.miranda-ng.org/main/trunk@4911 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'protocols/Skype/src/skype_chat.h')
-rw-r--r--protocols/Skype/src/skype_chat.h19
1 files changed, 13 insertions, 6 deletions
diff --git a/protocols/Skype/src/skype_chat.h b/protocols/Skype/src/skype_chat.h
index d070cb0b44..c2d0fa80b9 100644
--- a/protocols/Skype/src/skype_chat.h
+++ b/protocols/Skype/src/skype_chat.h
@@ -84,7 +84,6 @@ public:
void SetPaticipant(const ParticipantRef &participant)
{
this->participant = participant;
- //this->participant.fetch();
}
static int Compare(const ChatMember *p1, const ChatMember *p2)
@@ -128,9 +127,7 @@ private:
wchar_t *cid;
wchar_t *name;
- HANDLE hContact;
-
-
+ HANDLE hContact;
LIST<ChatMember> members;
@@ -145,6 +142,7 @@ private:
inline static int CompareMembers(const ChatMember *p1, const ChatMember *p2) { return ChatMember::Compare(p1, p2); }
bool IsMe(const ChatMember &item) const;
+ bool IsSys(const ChatMember &item) const;
void SendEvent(const ChatMember &item, int eventType, DWORD timestamp = time(NULL), DWORD flags = GCEF_ADDTOLOG, DWORD itemData = 0, const wchar_t *status = NULL, const wchar_t *message = NULL);
void UpdateMember(const ChatMember &item, DWORD timestamp = time(NULL));
@@ -153,6 +151,7 @@ private:
public:
ChatMember *me;
+ ChatMember *sys;
CConversation::Ref conversation;
ChatRoom(const wchar_t *cid, const wchar_t *name, CSkypeProto *ppro);
@@ -166,18 +165,26 @@ public:
void SendEvent(const wchar_t *sid, int eventType, DWORD timestamp = time(NULL), DWORD flags = GCEF_ADDTOLOG, DWORD itemData = 0, const wchar_t *status = NULL, const wchar_t *message = NULL);
bool IsMe(const wchar_t *sid) const;
+ bool IsSys(const wchar_t *sid) const;
//
ChatMember *FindChatMember(const wchar_t *sid);
- void AddMember(const ChatMember &item, const ChatMember *author, DWORD timestamp = time(NULL));
+ void AddMember(const ChatMember &item, const ChatMember &author, DWORD timestamp = time(NULL));
+
+ void UpdateMemberNick(ChatMember *member, const wchar_t *nick, DWORD timestamp = time(NULL));
+ void UpdateMemberRole(ChatMember *member, int role, const ChatMember &author = NULL, DWORD timestamp = time(NULL));
+ void UpdateMemberStatus(ChatMember *member, int status, DWORD timestamp = time(NULL));
+
+ void UpdateMember(const wchar_t *sid, const wchar_t *nick, int role, int status, DWORD timestamp = time(NULL));
- void UpdateMember(const wchar_t *sid, const wchar_t *nick, int rank, int status, DWORD timestamp = time(NULL));
void KickMember(const wchar_t *sid, const wchar_t *author, DWORD timestamp = time(NULL));
void RemoveMember(const wchar_t *sid, DWORD timestamp = time(NULL));
void OnEvent(const ConversationRef &conversation, const MessageRef &message);
+ void OnParticipantChanged(const ParticipantRef &participant, int prop);
+
static int __cdecl OnGCEventHook(WPARAM, LPARAM lParam);
static int __cdecl OnGCMenuHook(WPARAM, LPARAM lParam);
}; \ No newline at end of file