示例#1
0
 public FileTransferPresenter(IFIleTransferModel model, IFileTransferView view)
 {
     _model = model;
     _view  = view;
     UpdateModelFromView();
     WireUpEvents();
 }
示例#2
0
        void mainView_LogoutEvent()
        {
            fileListManager.SaveFileList();

            StopPeerConnectionManager();

            foreach (KeyValuePair<string,IConversationController> pair in conversationControllers)
            {
                pair.Value.CloseView();
            }
            conversationControllers.Clear();

            this.mainView.LoginEvent -= mainView_LoginEvent;

            currentState = currentState.MoveState();

            this.mainView.LoginEvent += mainView_LoginEvent;

            EmptyCurrentStateOutputBuffer();

            inputMessageQueue.Clear();

            ProcessOutputQueue();

            toBreak = true;

            mainLoopStarted = false;

            mainView.Initialise();

            if(fileTransferView!=null)
                fileTransferView.CloseView();

            fileTransferView = null;
        }
示例#3
0
 private void DisposeFileTransferView()
 {
     if (fileTransferView != null)
     {
         fileTransferView.CloseView();
         fileTransferView.CancelFileTransferEvent -= this.fileTransferView_CancelFileTransferEvent;
         fileTransferView.ContactSelectedEvent -= this.fileTransferView_ContactSelectedEvent;
         fileTransferView.GetContactListEvent -= this.fileTransferView_GetContactListEvent;
         fileTransferView.StartFileTransferEvent -= this.fileTransferView_StartFileTransferEvent;
         fileTransferView.ViewClosedEvent -= this.fileTransferView_ViewClosedEvent;
         fileTransferView = null;
     }
 }
示例#4
0
        public void InitialiseFileTransferManager(IFileTransferView newFileTransferView)
        {
            if (this.currentState is StateIdle)
            {
                this.fileTransferView = newFileTransferView;
                ((StateIdle)currentState).InitialiseFileTransferManager(fileTransferView,this.peerConnectionManager,this._downloadedFileLists);

                this.fileTransferView.ViewClosedEvent += new ViewClosedEventHandler(fileTransferView_ViewClosedEvent);
                this.fileTransferView.ContactSelectedEvent += new ContactSelectedEventHandler(fileTransferView_ContactSelectedEvent);
                this.fileTransferView.GetContactListEvent += new GetContactListEventHandler(fileTransferView_GetContactListEvent);
                this.fileTransferView.StartFileTransferEvent += new StartFileTransferEventHandler(fileTransferView_StartFileTransferEvent);
                this.fileTransferView.CancelFileTransferEvent += new CancelFileTransferEventHandler(fileTransferView_CancelFileTransferEvent);
                this.fileTransferView.Initialise(((StateIdle)currentState).OnlineContacts.Keys);
            }
        }
示例#5
0
 public void InitialiseFileTransferManager(IFileTransferView newFileTransferView, PeerConnectionManager peerConnectionManager, IDictionary<string,IDictionary<int,string>> downloadedFileLists)
 {
     this._fileTransferView = newFileTransferView;
     this._peerConnectionManager = peerConnectionManager;
     this._doawnloadedFileLists = downloadedFileLists;
 }