使用soui开发的mbc,只支持windows版本
w1146869587
2022-01-24 0408576e9da10015ffa9da0079b8c985113ce4b3
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
#pragma once
#include "stdafx.h"  
#include "MBTransCommomFtn.h"
#include "MBDownloadMCAdapter.h"
#include "MBUploadMCAdapter.h"
#include "MBHistoryMCAdapter.h" 
#include "MBErrMCAdapter.h"
#include "MBTransWnd.h"
#include "event\NotifyCenter.h"
// Ïß³Ì
#include "MBThreadDocInit.h"
 
/************************************************************************/
/*  ´«ÊäÖ÷´°¿Ú                                                          */
/************************************************************************/
class AFX_EXT_CLASS CMBTransWnd:
    public TAutoEventMapReg<CMBTransWnd>//֪ͨÖÐÐÄ×Ô¶¯×¢²á   
{
    friend class CMBTransCommomFtn;    
public:
    CMBTransWnd(void);
    ~CMBTransWnd(void);
private:
    bool m_bLayoutInited;
private: // ×é¼þ
    SOUI::SWindow            *m_pPageRoot; 
    HWND                      m_hWnd;
    SHostWnd                 *m_pHostWnd; 
    CMBMcListViewEx             *m_pMCLVTransDownload;    // ´«Êä--ÏÂÔØÁбí
    CMBDownloadMCAdapter     *m_pAdapterDownloadMC;    
 
    CMBMcListViewEx             *m_pMCLVTransUpload;      // ´«Êä--ÉÏ´«Áбí
    CMBUploadMCAdapter       *m_pAdapterUploadMC;    
 
    CMBMcListViewEx             *m_pMCLVTransHistory;    // ´«Êä--ÉÏ´«Íê³É
    CMBHistoryMCAdapter      *m_pAdapterHistoryMC;  
 
    CMBMcListViewEx             *m_pMCLVTransErr;        // ´«Êä--ÉÏ´«´íÎó
    CMBErrMCAdapter          *m_pAdapterErrMC;  
  
    CMBServerMgr             *m_pSvrMgr;
    CMBTransMgr              *m_pTransMgr;            // ´«Êä¹ÜÀíÆ÷  
    CMBTransSvrMgr             *m_pTransSvrMgr;
    CMBTransCommomFtn        *m_pTransCommomFtn;
public:  // Ï̠߳
    CMBThreadDocInit         *m_pThreadDocInit;          // ÓÃÓÚ´óÊý¾ÝµÄ³õʼ»¯£¬Õâ¸ö¿ÉÄÜûÓбØÒª
    CMBThreadUploadDB        *m_pThreadUploadDB;         // ÓÃÓÚ½«±¾µØÎļþ£¬ÉÏ´«µ½Êý¾Ý¿â
    CMBThreadUploadSvr       *m_pThreadUploadSvr;        // ÉÏ´«µ½·þÎñ¶Ë
        
    CMBThreadDownloadDB      *m_pThreadDownloadDB;       // ÓÃÓÚ½«·þÎñ¶ËÊý¾Ý£¬ÏÂÔØµ½Êý¾Ý¿â    
    CMBThreadDownloadDisk    *m_pThreadDownloadDisk;     // ÏÂÔØµ½´ÅÅÌ 
public: 
    SRadioEx                 *m_pRadioExTrans;
    // transÒ³µÄtabÏî
    SStatic                     *m_pTxtTransCount;
    SRadioEx                 *m_pRadioExDownload;
    SRadioEx                 *m_pRadioExUpload;
    SRadioEx                 *m_pRadioExHistory;
    SRadioEx                 *m_pRadioExError; 
private:// tab
    STabCtrl                 *m_pTab;
    SWindow                  *m_pTxtEmptyTip; 
 
public: // ¹Ø±Õʱ
    void OnClose();  // ÓÃÀ´·´×¢²á£¬×Ô¶¨Òåʼþ
protected:
    //souiÏûÏ¢
    EVENT_MAP_BEGIN() 
        EVENT_CHECK_SENDER_ROOT(m_pPageRoot)  
        EVENT_ID_COMMAND_RANGE(PAGE_TRANS_DOWNLOAD_ID, PAGE_TRANS_ERR_ID, OnTransTabPageRadioSwitch)     
        EVENT_NAME_COMMAND(_T("btn_clear_history"),OnBtnClearHistory)   // Çå³ýÀúÊ·     
        // È«²¿¿ªÊ¼
        EVENT_NAME_COMMAND(_T("btn_upload_allplayorpause"),OnBtnUploadAllPlayOrPause)       // È«²¿¿ªÊ¼»òÕßÔÝÍ£      
        EVENT_NAME_COMMAND(_T("btn_upload_allcancel"),OnBtnUploadAllCancel)                 // È«²¿È¡Ïû      
        EVENT_NAME_COMMAND(_T("btn_download_allplayorpause"),OnBtnDownloadAllPlayOrPause)   // È«²¿¿ªÊ¼»òÕßÔÝÍ£      
        EVENT_NAME_COMMAND(_T("btn_download_allcancel"),OnBtnDownloadAllCancel)             // È«²¿È¡Ïû    
        //////////////err////////////////////////////////////////////////////////
        EVENT_NAME_COMMAND(_T("btn_err_restart"),OnBtnErrRestart)             // È«²¿ÖØÆô    
        EVENT_NAME_COMMAND(_T("btn_err_clear"),OnBtnErrClear)                 // È«²¿Çå¿Õ    
        ////////////////////////////////////////////////////////////////////////
        //EVENT_NAME_HANDLER(_T("mclv_history"),EVT_SCROLLVIEW_ORIGINCHANGED,OnEventTest) 
        EVENT_NAME_HANDLER(_T("mclv_history"),EVT_MCLVEX_SCROLLBOTTOM,OnEventMCLVEXHistScrollBottom) 
        EVENT_NAME_HANDLER(_T("mclv_err"),EVT_MCLVEX_SCROLLBOTTOM,OnEventMCLVEXErrScrollBottom) 
            // ³õʼ»¯Ïß³Ì
        EVENT_HANDLER(EventDocStartThread::EventID,OnEventDocStartThread)    
        EVENT_HANDLER(EventTransRefresh::EventID,OnEventTransRefresh)
        EVENT_HANDLER(EventKillTransRefresh::EventID,OnEventKillTransRefresh)
    EVENT_MAP_BREAK()  
public:
    void OnInit(SWindow *pRoot);
    void OnTransTabPageRadioSwitch(int nID);  
    void DoMessageLoop();
    void OnTimer(UINT_PTR nIDEvent);   // ¶¨Ê±Æ÷
public:    
    void OnEventMCLVEXHistScrollBottom(EventArgs *pEvt); // ¹ö¶¯¼ÓÔØÊý¾Ý
    void OnEventMCLVEXErrScrollBottom(EventArgs *pEvt); // ¹ö¶¯¼ÓÔØÊý¾Ý
 
public:    
    // ³õʼ»¯Ïß³Ì
    bool OnEventDocStartThread(EventArgs *e);
    bool OnEventTransRefresh(EventArgs *e);
    bool OnEventKillTransRefresh(EventArgs *e);     
public: 
     void OnBtnClearHistory();               // ´«ÊäÍê³É:Çå³ýÀúÊ·
     void OnBtnUploadAllPlayOrPause();       // ÉÏ´«Áбí:È«²¿¿ªÊ¼»òÕßÔÝÍ£      
     void OnBtnUploadAllCancel();            // ÉÏ´«Áбí:È«²¿È¡Ïû      
     void OnBtnDownloadAllPlayOrPause();     // ÏÂÔØÁбí:È«²¿¿ªÊ¼»òÕßÔÝÍ£      
     void OnBtnDownloadAllCancel();          // ÏÂÔØÁбí:È«²¿È¡Ïû    
     void OnBtnErrRestart();                 // ´íÎóÁбí:ÖØÆô
     void OnBtnErrClear();                   // ´íÎóÁбí:Çå³ý 
public:
    bool RegisterNotifyCenter();
    bool UnRegisterNotifyCenter();
public:
    void RefreshTrans( );
public:
    void SetTransSvrMgr( CMBTransSvrMgr *pTransSvrMgr); 
    void SetSvrMgr(CMBServerMgr *pServerMgr ); 
};