📄 evapacketmanager.h
字号:
/*************************************************************************** * Copyright (C) 2004 by yunfan * * yunfan_zg@163.com * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * * This program is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * * GNU General Public License for more details. * * * * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the * * Free Software Foundation, Inc., * * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/#ifndef EVAPACKETMANAGER_H #define EVAPACKETMANAGER_H#include "libeva.h"#include "evauser.h"#include <map>#include <list>#include <qobject.h>#include <qdatetime.h>#include <qstringlist.h>#include <qvaluelist.h>// passing a connected EvaConnecter in, otherwise whenever sending a packet will cause an exceptionclass QTimer;class EvaConnecter;class QTextCodec;typedef struct { short total; //used to show missing part std::map<short,QString> content;} pcMsg;class EvaPacketManager : public QObject { Q_OBJECTpublic: EvaPacketManager(EvaUser *user, EvaConnecter *connecter); ~EvaPacketManager(); EvaUser *getUser() { return user; } EvaConnecter *getConnecter() { return connecter; } QStringList convertDetails(const ContactInfo &info); const int getNumOnlineUsers() const { return numOnlineUsers; }public slots: void doRequestLoginToken(); void doRequestLoginTokenEx( const QString &code = ""); void doLogin(); void doLogout(); void doGetUserInfo(const unsigned int id); void doModifyDetails(QStringList info, QString oldPwd = QString::null, QString newPwd = QString::null); void doChangeStatus(EvaUser::UserStatus newStatus); void doGetAllFriends(); void doGetAllLevels(); void requestFriendLevel(const unsigned int id); void doSendMessage(const unsigned int receiver, const bool isNormal, QString &message, const char fontSize = 9, const bool u = false, const bool i = false, const bool b = false, const char blue = 0, const char green = 0, const char red = 0); void doGetGroups(); void doUploadGroups(); void doDeleteBuddy(const unsigned int id); void doAddBuddy(const unsigned int id); void doAddAuthBuddy(const unsigned int id, const QString &message); void doApproveBuddy(const unsigned int id); void doRejectBuddy(const unsigned int id, const QString &message); void doSearchUsers(const bool isSearchAll = true, const QString page = "0", const QString id ="", const QString nick = "", const QString email = "", const bool match = false); void doDeleteMeFrom(const unsigned int id); void doRequestQunInfo(const unsigned int id); void doRequestQunMemberInfo(const unsigned int id, const std::list<unsigned int> &l); void doRequestQunOnlineMembers(const unsigned int id); void doSendQunMessage(const unsigned int receiver, QString &message, const char fontSize = 9, const bool u = false, const bool i = false, const bool b = false, const char blue = 0, const char green = 0, const char red = 0); void doSearchQun(const unsigned int extID); void doJoinQun(const unsigned int qunID); void doJoinQunAuth(const unsigned int qunID , const unsigned char *code, const unsigned short len, const QString &msg); void doApproveQun(const unsigned int qq, const unsigned int id, const unsigned char *token, const unsigned short len); void doRejectQun(const unsigned int qq, const unsigned int id, const QString & msg, const unsigned char *token, const unsigned short len); void doModifyQunInfo(const unsigned int id, unsigned char auth, unsigned short cate, QString name, QString notice, QString description); void doModifyQunCard(const unsigned int id, const unsigned int qqID, QString name, unsigned char gender, QString phone, QString email, QString memo); void doQunSetAdmin(const unsigned int id, const unsigned int qq, const bool isSetAdmin); void doQunTransfer(const unsigned int id, const unsigned int qq); void doModifyQunMembers(const unsigned int id, const std::list<unsigned int>members, const bool isAdd); void doRequestQunCard( const unsigned int id, const unsigned int qq); void doQunExit(const unsigned int id); void doQunCreate(const QString &name, const unsigned short category, const unsigned char auth, const QString ¬ice, const QString &description, const std::list<unsigned int> &members); void doRequestQunRealNames(const unsigned int id); void doRequestExtraInfo(); void doModifySignature(const QString signature); // only for user use only void doDeleteSignature(); // only for user use only void doRequestSignature( const unsigned int start = 0); // for all your buddies void doUploadMemo( const unsigned int id, const MemoItem &memo ); void doRemoveMemo( const unsigned int id); void doDownloadMemo( const unsigned int id); void lastLoginStep(); void doSendFileUdpRequest(const unsigned int id, const QString fileName, const unsigned int fileSize, const short session, const unsigned char transferType = QQ_TRANSFER_FILE); void doAcceptFileRequest(const unsigned int id, const short session, const unsigned int wanIp, const unsigned char transferType = QQ_TRANSFER_FILE); void doCancelFileRequest(const unsigned int id, const short session, const unsigned char transferType = QQ_TRANSFER_FILE); void doNotifyAgentTransfer(const unsigned int id, const unsigned int oldSession, const unsigned int agentSession, const unsigned int ip, const unsigned short port, const unsigned char transferType = QQ_TRANSFER_FILE); void doNotifyIpEx(const unsigned int id, const bool isSender, const unsigned int session,const unsigned char transferType, const unsigned int wanIp1, const unsigned short wanPort1, const unsigned int wanIp2, const unsigned short wanPort2, const unsigned int wanIp3, const unsigned short wanPort3, const unsigned int lanIp1, const unsigned short lanPort2, const unsigned int lanIp2, const unsigned short lanPort2, const unsigned int lanIp3, const unsigned short lanPort3, const unsigned int syncIp, const unsigned short syncPort, const unsigned int syncSession); void doAdvancedSearch(const int page = 0, const bool onlineUser = true, const bool hasCam = false, const int province = 0,const int city = 0, const int age = 0, const int gender = 0); void doAddBuddyEx(const unsigned int id); void doRequestAuthInfo(const unsigned int id, const unsigned char cmd = AUTH_INFO_CMD_INFO, const QString &veri="", const QString &session="", const bool isQun = false); void doRequestAuthQuestion(const unsigned int id, const bool isQuestion = true, const QString &answer = ""); void doSetMyAuthQuestion(const QString &quest = "", const QString &answer = ""); void doRequestMyAuthQuestionSetting(); void doAddBuddyAuthEx(const unsigned int id, const unsigned char authStatus, const unsigned int destGroup = 0, const unsigned char *code = 0, const unsigned short len = 0, const unsigned char *qcode = 0, const unsigned short qlen = 0, const QString &msg = "", const bool allowReverse = false); void doVerifyAddingMessage(const unsigned int id, const unsigned char * code, const unsigned int len);signals: void networkException(int); void packetException(int); void serverBusy(); void loginOK(); void loginNeedVerification(); void loginVerifyPassed(); void logoutOK(); void onlineReady(); void offlineReady(); void invisibleReady(); void leaveReady(); void kickedOut(const QString); void fileAgentInfoReady(); void friendStatusChanged(int id); void friendListReady(); void myInfoReady(); void userInfoReady(QStringList info); void extraInfoReady(); void modifyInfo(bool); void sentMessageResult(unsigned int ,bool); void txtMessage(unsigned int sender, bool isNormal, QString message, QDateTime time, const char fontSize,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -