diff options
author | Gluzskiy Alexandr <sss123next@list.ru> | 2011-03-16 03:24:16 +0200 |
---|---|---|
committer | Gluzskiy Alexandr <sss123next@list.ru> | 2011-03-16 03:24:16 +0200 |
commit | 68b8f4ead3b2005856427392bd1a7fd8830ee3a9 (patch) | |
tree | a83c98b4298e1fd69ca08b77ec5dd0c521d47803 | |
parent | 2c8627c6f7c0762c36995028b9d7af346209e2be (diff) |
modified: jabber_account.cpp
modified: jabber_account.h
modified: utilities.cpp
-rw-r--r-- | jabber_account.cpp | 10 | ||||
-rw-r--r-- | jabber_account.h | 4 | ||||
-rw-r--r-- | utilities.cpp | 13 |
3 files changed, 22 insertions, 5 deletions
diff --git a/jabber_account.cpp b/jabber_account.cpp index ac5ce24..9dedd56 100644 --- a/jabber_account.cpp +++ b/jabber_account.cpp @@ -36,6 +36,10 @@ void JabberAccount::setPrescenseHandler(HJHANDLER hHandler) {
hPrescenseHandler = hHandler;
}
+void JabberAccount::setMessageHandler(HJHANDLER hHandler)
+{
+ hMessageHandler = hHandler;
+}
TCHAR *JabberAccount::getAccountName()
@@ -59,12 +63,18 @@ HJHANDLER JabberAccount::getPrescenseHandler() return hPrescenseHandler;
}
+HJHANDLER JabberAccount::getMessageHandler()
+{
+ return hMessageHandler;
+}
+
JabberAccount::JabberAccount()
{
AccountName = NULL;
hSendHandler = INVALID_HANDLE_VALUE;
hPrescenseHandler = INVALID_HANDLE_VALUE;
+ hMessageHandler = INVALID_HANDLE_VALUE;
AccountNumber = -1;
JabberInterface = NULL;
}
diff --git a/jabber_account.h b/jabber_account.h index 66a8bc1..766f571 100644 --- a/jabber_account.h +++ b/jabber_account.h @@ -23,19 +23,21 @@ public: void setJabberInterface(IJabberInterface *JIf);
void setSendHandler(HJHANDLER hHandler);
void setPrescenseHandler(HJHANDLER hHandler);
+ void setMessageHandler(HJHANDLER hHandler);
TCHAR *getAccountName();
int getAccountNumber();
IJabberInterface *getJabberInterface();
HJHANDLER getSendHandler();
HJHANDLER getPrescenseHandler();
+ HJHANDLER getMessageHandler();
~JabberAccount();
JabberAccount();
private:
TCHAR *AccountName;
int AccountNumber;
IJabberInterface *JabberInterface;
- HJHANDLER hSendHandler, hPrescenseHandler;
+ HJHANDLER hSendHandler, hPrescenseHandler, hMessageHandler;
};
#endif
\ No newline at end of file diff --git a/utilities.cpp b/utilities.cpp index cf64422..d59a7cb 100644 --- a/utilities.cpp +++ b/utilities.cpp @@ -782,6 +782,13 @@ static JABBER_HANDLER_FUNC PrescenseHandler(IJabberInterface *ji, HXML node, voi return FALSE; } +static JABBER_HANDLER_FUNC MessageHandler(IJabberInterface *ji, HXML node, void *pUserData) +{ + return FALSE; +} + + + void AddHandlers() { @@ -792,13 +799,11 @@ void AddHandlers() if(!(*p)) break; if((*p)->getSendHandler() == INVALID_HANDLE_VALUE) - { (*p)->setSendHandler((*p)->getJabberInterface()->Net()->AddSendHandler((JABBER_HANDLER_FUNC)SendHandler)); - } if((*p)->getPrescenseHandler() == INVALID_HANDLE_VALUE) - { (*p)->setPrescenseHandler((*p)->getJabberInterface()->Net()->AddPresenceHandler((JABBER_HANDLER_FUNC)PrescenseHandler)); - } + if((*p)->getMessageHandler() == INVALID_HANDLE_VALUE) + (*p)->setMessageHandler((*p)->getJabberInterface()->Net()->AddMessageHandler((JABBER_HANDLER_FUNC)MessageHandler, JABBER_MESSAGE_TYPE_ERROR,0 ,0)); if(bAutoExchange) { (*p)->getJabberInterface()->Net()->RegisterFeature(_T("GPG_Key_Auto_Exchange:0"), _T("Indicates that gpg installed and configured to public key auto exchange (currently implemented in new_gpg Miranda IM plugin)")); |