private void AddTweet(TweetViewModel tvm)
 {
     var atdtvm = new TabDependentTweetViewModel(tvm, this.Parent);
     if (this._tweetsSource.Contains(atdtvm)) return;
     if (Setting.Instance.TimelineExperienceProperty.UseIntelligentOrdering &&
         DateTime.Now.Subtract(tvm.CreatedAt).TotalSeconds < Setting.Instance.TimelineExperienceProperty.IntelligentOrderingThresholdSec)
     {
         if (Setting.Instance.TimelineExperienceProperty.OrderByAscending)
             this._tweetsSource.AddLastSingle(atdtvm);
         else
             this._tweetsSource.AddTopSingle(atdtvm);
     }
     else
     {
         this._tweetsSource.AddOrderedSingle(
             atdtvm, Setting.Instance.TimelineExperienceProperty.OrderByAscending,
             t => t.Tweet.CreatedAt);
     }
     OnNewTweetReceived();
 }
Example #2
0
 private void CreateUserTab(TabDependentTweetViewModel tvm, bool newColumn)
 {
     var filter = new[] { new FilterUserId(tvm.Tweet.Status.User.NumericId) };
     var desc = "@" + tvm.Tweet.Status.User.ScreenName;
     if (newColumn)
     {
         var column = tvm.Parent.Parent.Parent.CreateColumn();
         column.AddTab(new Configuration.Tabs.TabProperty() { Name = desc, TweetSources = filter });
     }
     else
     {
         tvm.Parent.Parent.AddTab(new Configuration.Tabs.TabProperty() { Name = desc, TweetSources = filter });
     }
 }