public void UpdateViewModels(ViewMode newView)
        {
            MessageView.ChangeViewMode(newView, selectedUser, currentSearch);
            SearchView.ChangeViewMode(newView);
            UpdateUserView();
            switch (newView)
            {
            case ViewMode.MainView:
                SenderView = new TweetSenderView(application);
                break;

            case ViewMode.UserView:
                SenderView = new TweetSenderView(application, selectedUser.Handle);
                break;

            case ViewMode.ConversationView:
                SenderView = null;
                break;

            case ViewMode.DMView:
                SenderView = new DirectMessageSenderView(application, selectedUser.Handle);
                break;

            case ViewMode.SearchView:
                SenderView = new TweetSenderView(application);
                break;
            }
        }
 public MainWindowView(TwitterApplication app, Account curAccount)
 {
     application    = app;
     selectedUser   = app.User;
     currentAccount = curAccount;
     MessageView    = new MessageCollectionView(app, new ClickDelegate(HandleClick));
     SenderView     = new TweetSenderView(app);
     UserView       = new OwnUserView(selectedUser);
     SearchView     = new SearchView(new ClickDelegate(HandleClick));
     FilterView     = new FilterMenuView(app, new ClickDelegate(HandleClick));
     viewMode       = ViewMode.MainView;
     UpdateViewModels(viewMode);
 }