现在的位置: 首页 > 综合 > 正文

IPMsg中最核心的数据结构

2013年11月28日 ⁄ 综合 ⁄ 共 5043字 ⁄ 字号 评论关闭
IPMsg.h
  1. class TMainWin : public TWin {
  2. protected:
  3.     static HICON    hMainIcon;
  4.     static HICON    hRevIcon;
  5.     static TMainWin *mainWin;   // for thread proc
  6.     TList           sendList;
  7.     TList           recvList;
  8.     TList           msgList;
  9.     TList           sendFileList;
  10.     TList           connectList;
  11.     THosts          hosts;
  12.     TSetupDlg       *setupDlg;
  13.     TAboutDlg       *aboutDlg;
  14.     TShareStatDlg   *shareStatDlg;
  15.     TAbsenceDlg     *absenceDlg;
  16.     MsgMng          *msgMng;
  17.     LogMng          *logmng;
  18.     ShareMng        *shareMng;
  19.     Cfg             *cfg;
  20.     TRecycleList    *ansList;
  21.     int         portNo;
  22.     int         memberCnt;
  23.     time_t      refreshStartTime;
  24.     time_t      entryStartTime;
  25.     UINT        entryTimerStatus;
  26.     UINT        reverseTimerStatus;
  27.     UINT        ansTimerID;
  28.     UINT        TaskBarCreateMsg;
  29.     BOOL        terminateFlg;
  30.     BOOL        activeToggle;
  31. #define MAX_PACKETLOG   16
  32.     struct {
  33.         ULONG       no;
  34.         ULONG       addr;
  35.         int         port;
  36.     } packetLog[MAX_PACKETLOG];
  37.     int     packetLogCnt;
  38.     BOOL    IsLastPacket(MsgBuf *msg);
  39.     void    SetIcon(HICON hSetIcon);
  40.     void    ReverseIcon(BOOL startFlg);
  41.     void    EntryHost(void);
  42.     void    ExitHost(void);
  43.     void    Popup(UINT resId);
  44.     BOOL    PopupCheck(void);
  45.     BOOL    AddAbsenceMenu(HMENU hMenu, int insertIndex);
  46.     void    ActiveChildWindow(BOOL hide=FALSE);
  47.     BOOL    TaskBar(int nimMode, HICON hSetIcon = NULL, LPCSTR tip = NULL);
  48.     BOOL    UdpEvent(LPARAM lParam);
  49.     BOOL    TcpEvent(int sd, LPARAM lParam);
  50.     BOOL    CheckConnectInfo(ConnectInfo *conInfo);
  51.     inline  SendFileObj *FindSendFileObj(int sd);
  52.     BOOL    StartSendFile(int sd);
  53.     BOOL    OpenSendFile(const char *fname, SendFileObj *obj);
  54. static DWORD WINAPI SendFileThread(void *_sendFileObj);
  55.     BOOL    SendFile(SendFileObj *obj);
  56.     BOOL    SendDirFile(SendFileObj *obj);
  57.     BOOL    CloseSendFile(SendFileObj *obj);
  58.     BOOL    EndSendFile(SendFileObj *obj);
  59.     void    BroadcastEntry(ULONG mode);
  60.     void    BroadcastEntrySub(ULONG addr, int portNo, ULONG mode);
  61.     void    BroadcastEntrySub(HostSub *hostSub, ULONG mode);
  62.     void    Terminate(void);
  63.     BOOL    SendDlgOpen(HWND hRecvWnd = NULL, MsgBuf *msg = NULL);
  64.     void    SendDlgHide(TSendDlg *sendDlg);
  65.     void    SendDlgExit(TSendDlg *sendDlg);
  66.     BOOL    RecvDlgOpen(MsgBuf *msg);
  67.     void    RecvDlgExit(TRecvDlg *recvDlg);
  68.     void    MsgDlgExit(TMsgDlg *msgDlg);
  69.     void    MiscDlgOpen(TDlg *dlg);
  70.     void    LogOpen(void);
  71.     void    AddHost(HostSub *hostSub, ULONG command, char *nickName=""char *groupName="");
  72.     inline  void SetHostData(Host *destHost, HostSub *hostSub, ULONG command, time_t now_time, char *nickName=""char *groupName=""int priority=DEFAULT_PRIORITY);
  73.     void    DelAllHost(void);
  74.     void    DelHost(HostSub *hostSub);
  75.     void    DelHostSub(Host *host);
  76.     void    RefreshHost(BOOL unRemove);
  77.     void    SetCaption(void);
  78.     void    SendHostList(MsgBuf *msg);
  79.     void    AddHostList(MsgBuf *msg);
  80.     ULONG   HostStatus(void);
  81.     void    ActiveListDlg(TList *dlgList, BOOL active = TRUE);
  82.     void    DeleteListDlg(TList *dlgList);
  83.     void    ActiveDlg(TDlg *dlg, BOOL active = TRUE);
  84.     char    *GetNickNameEx(void);
  85.     void    InitIcon(void);
  86.     void    ControlIME(TWin *win, BOOL on);
  87.     BOOL    SetAnswerQueue(AddrObj *obj);
  88.     void    ExecuteAnsQueue(void);
  89. #define     KEY_REBUILD     0x0001
  90. #define     KEY_DIAG        0x0002
  91.     BOOL    SetupCryptAPI(void);
  92.     BOOL    SetupCryptAPICore(int ctl_flg = 0);
  93.     void    MsgBrEntry(MsgBuf *msg);
  94.     void    MsgBrExit(MsgBuf *msg);
  95.     void    MsgAnsEntry(MsgBuf *msg);
  96.     void    MsgBrAbsence(MsgBuf *msg);
  97.     void    MsgSendMsg(MsgBuf *msg);
  98.     void    MsgRecvMsg(MsgBuf *msg);
  99.     void    MsgReadMsg(MsgBuf *msg);
  100.     void    MsgBrIsGetList(MsgBuf *msg);
  101.     void    MsgOkGetList(MsgBuf *msg);
  102.     void    MsgGetList(MsgBuf *msg);
  103.     void    MsgAnsList(MsgBuf *msg);
  104.     void    MsgGetInfo(MsgBuf *msg);
  105.     void    MsgSendInfo(MsgBuf *msg);
  106.     void    MsgGetPubKey(MsgBuf *msg);
  107.     void    MsgAnsPubKey(MsgBuf *msg);
  108.     void    MsgGetAbsenceInfo(MsgBuf *msg);
  109.     void    MsgSendAbsenceInfo(MsgBuf *msg);
  110.     void    MsgReleaseFiles(MsgBuf *msg);
  111.     void    MsgInfoSub(MsgBuf *msg);
  112. public:
  113.     TMainWin(ULONG _nicAddr=INADDR_ANY, int _portNo=IPMSG_DEFAULT_PORT, TWin *_parent = NULL);
  114.     virtual ~TMainWin();
  115.     virtual BOOL    EvCreate(LPARAM lParam);
  116.     virtual BOOL    EvClose(void);
  117.     virtual BOOL    EvCommand(WORD wNotifyCode, WORD wID, LPARAM hwndCtl);
  118.     virtual BOOL    EvSysCommand(WPARAM uCmdType, WORD xPos, WORD yPos);
  119.     virtual BOOL    EvTimer(WPARAM timerID, TIMERPROC proc);
  120.     virtual BOOL    EvEndSession(BOOL nSession, BOOL nLogOut);
  121.     virtual BOOL    EvQueryOpen(void);
  122.     virtual BOOL    EvHotKey(int hotKey);
  123.     virtual BOOL    EventButton(UINT uMsg, int nHitTest, POINTS pos);
  124.     virtual BOOL    EventInitMenu(UINT uMsg, HMENU hMenu, UINT uPos, BOOL fSystemMenu);
  125.     virtual BOOL    EventUser(UINT uMsg, WPARAM wParam, LPARAM lParam);
  126.     static  HICON   GetIPMsgIcon(void);
  127. };

抱歉!评论已关闭.