Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/13/10 12:01:02 (12 years ago)
Author:
swagner
Message:

Fixed bug which was introduced in r3306 (#893).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Core.Views/3.3/ItemCollectionView.cs

    r3317 r3327  
    102102      listViewItem.ToolTipText = item.ItemName + ": " + item.ItemDescription;
    103103      listViewItem.Tag = item;
    104       SetListViewItemImage(listViewItem);
     104      itemsListView.SmallImageList.Images.Add(item.ItemImage);
     105      listViewItem.ImageIndex = itemsListView.SmallImageList.Images.Count - 1;
    105106      return listViewItem;
    106107    }
     
    119120      sortDescendingButton.Enabled = itemsListView.Items.Count > 0;
    120121    }
    121     protected virtual void UpdateListViewItem(ListViewItem listViewItem) {
     122    protected virtual void UpdateListViewItemImage(ListViewItem listViewItem) {
     123      int i = listViewItem.ImageIndex;
     124      listViewItem.ImageList.Images[i] = ((T)listViewItem.Tag).ItemImage;
     125      listViewItem.ImageIndex = -1;
     126      listViewItem.ImageIndex = i;
     127    }
     128    protected virtual void UpdateListViewItemText(ListViewItem listViewItem) {
    122129      if (!listViewItem.Text.Equals(listViewItem.Tag.ToString()))
    123130        listViewItem.Text = listViewItem.Tag.ToString();
    124       if (itemsListView.SmallImageList.Images[listViewItem.ImageIndex] != ((T)listViewItem.Tag).ItemImage)
    125         SetListViewItemImage(listViewItem);
    126131    }
    127132    protected virtual IEnumerable<ListViewItem> GetListViewItemsForItem(T item) {
     
    262267        T item = (T)sender;
    263268        foreach (ListViewItem listViewItem in GetListViewItemsForItem(item))
    264           UpdateListViewItem(listViewItem);
     269          UpdateListViewItemImage(listViewItem);
    265270      }
    266271    }
     
    271276        T item = (T)sender;
    272277        foreach (ListViewItem listViewItem in GetListViewItemsForItem(item))
    273           UpdateListViewItem(listViewItem);
     278          UpdateListViewItemText(listViewItem);
    274279      }
    275280    }
     
    277282
    278283    #region Helpers
    279     protected virtual void SetListViewItemImage(ListViewItem listViewItem) {
    280       T item = (T)listViewItem.Tag;
    281       int i = 0;
    282       while ((i < itemsListView.SmallImageList.Images.Count) && !item.ItemImage.Equals(itemsListView.SmallImageList.Images[i]))
    283         i++;
    284       if (i == itemsListView.SmallImageList.Images.Count) itemsListView.SmallImageList.Images.Add(item.ItemImage);
    285       listViewItem.ImageIndex = i;
    286     }
    287284    protected virtual void SortItemsListView(SortOrder sortOrder) {
    288285      itemsListView.Sorting = SortOrder.None;
Note: See TracChangeset for help on using the changeset viewer.