Exemple #1
0
 void IView.UpdateItems(IEnumerable <ViewItem> items, ViewUpdateFlags flags)
 {
     metrics    = null;
     isUpdating = true;
     listBox.BeginUpdate();
     if ((flags & ViewUpdateFlags.ItemsCountDidNotChange) != 0 && (flags & ViewUpdateFlags.SelectionDidNotChange) != 0)
     {
         var itemIdx = 0;
         foreach (var i in items)
         {
             listBox.Items[itemIdx++] = new BookmarkItem(i);
         }
     }
     else
     {
         listBox.Items.Clear();
         foreach (var i in items)
         {
             var itemIdx = listBox.Items.Add(new BookmarkItem(i));
             if (i.IsSelected)
             {
                 listBox.SelectedIndices.Add(itemIdx);
             }
         }
     }
     listBox.EndUpdate();
     isUpdating = false;
 }
Exemple #2
0
        void IView.UpdateItems(IEnumerable <ViewItem> viewItems, ViewUpdateFlags flags)
        {
            isUpdating = true;
            var items = dataSource.items;

            items.Clear();
            items.AddRange(viewItems.Select((d, i) => new Item(this, d, i)));
            tableView.ReloadData();
            tableView.SelectRows(
                NSIndexSet.FromArray(items.Where(i => i.Data.IsSelected).Select(i => i.Index).ToArray()),
                byExtendingSelection: false
                );
            UpdateTimeDeltasColumn();
            isUpdating = false;
        }
 void UpdateViewInternal(IEnumerable <IBookmark> newSelection, ViewUpdateFlags flags)
 {
     view.UpdateItems(EnumBookmarkForView(
                          newSelection != null ? newSelection.ToLookup(b => b) : view.SelectedBookmarks.ToLookup(b => b)), flags);
     UpdateFocusedMessagePosition();
 }