public static void SetLastSelected(string ListName, status selectedStatus, SpecialTimeLine specialTime)
 {
     if (ListName == "Conversation" || ListName == "Search_TimeLine" || ListName=="@User_TimeLine") { return; }
     if (!LastSelectedItemsDictionary.ContainsKey(ListName))
     {
         LastSelectedItemsDictionary.Add(ListName, "");
     }
     LastSelectedItemsDictionary[ListName] = selectedStatus.id;
     
     if (!NewestSelectedItemsDictionary.ContainsKey(ListName))
     {
         lock(NewestSelectedItemsDictionary)
         {
             NewestSelectedItemsDictionary.Add(ListName, selectedStatus);
             StoreStatusInRegistry(ListName, selectedStatus);
         }
         SetUnreadCount(ListName, selectedStatus.id, specialTime);
     }
     else
     {
         if (NewestSelectedItemsDictionary[ListName].createdAt <= selectedStatus.createdAt)
         {
             NewestSelectedItemsDictionary[ListName] = selectedStatus;
             StoreStatusInRegistry(ListName, selectedStatus);
             SetUnreadCount(ListName, selectedStatus.id, specialTime);
         }
     }
     
     StoreSelectedItem(ListName, selectedStatus.id);
 }
        private  void DeleteItem(SpecialTimeLine t, SpecialTimeLine.groupTerm gt)
        {
            if(MessageBox.Show("Are you sure you want to remove " + gt.Name + " from this group?", "Remove "+ gt.Name, MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2)==DialogResult.Yes)
            {
                t.RemoveItem(gt.Term);
                ResetGroupItems();
                this.NeedsReRender = true;
            }

        }
 private void ToggleExclusive(SpecialTimeLine t, SpecialTimeLine.groupTerm gt, CheckBox sender)
 {
     gt.Exclusive = sender.Checked;
     this.NeedsReRender = true;
     SpecialTimeLines.Save();
 }
        public static int GetUpdatedCount(string ListName, SpecialTimeLine specialTime, string selectedStatus)
        {
            TimelineManagement.TimeLineType t = TimelineManagement.TimeLineType.Friends;
            switch (ListName)
            {
                case "Messages_TimeLine":
                    t = TimelineManagement.TimeLineType.Messages;
                    break;
            }

            string Constraints = null;
            if (specialTime != null) 
            {
                Constraints = specialTime.GetConstraints();
            }
            return LocalStorage.DataBaseUtility.CountItemsNewerThan(t, selectedStatus, Constraints);
        }
 public static void SetUnreadCount(string ListName, string selectedStatus, SpecialTimeLine specialTime)
 {
     int updatedCount = GetUpdatedCount(ListName, specialTime, selectedStatus);
     if(!UnreadItemCount.ContainsKey(ListName))
     {
         UnreadItemCount.Add(ListName, updatedCount);
     }
     else
     {
         UnreadItemCount[ListName] = updatedCount;
     }
     SetUnreadInRegistry(ListName, updatedCount);
     UnreadCountChanged(ListName, updatedCount);
 }