Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
12/20/11 11:45:18 (12 years ago)
Author:
gkronber
Message:

#1081 merged r7103:7209 from trunk into time series branch

Location:
branches/HeuristicLab.TimeSeries
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.TimeSeries

  • branches/HeuristicLab.TimeSeries/HeuristicLab.Core.Views/3.3/CheckedItemListView.cs

    r6233 r7213  
    2020#endregion
    2121
     22using System.Linq;
    2223using System.Drawing;
    2324using System.Windows.Forms;
     
    5455    private Color backupColor = Color.Empty;
    5556    protected override void SetEnabledStateOfControls() {
    56       if(backupColor == Color.Empty) backupColor = base.itemsListView.BackColor;
     57      if (backupColor == Color.Empty) backupColor = base.itemsListView.BackColor;
    5758      base.SetEnabledStateOfControls();
    5859      if (ReadOnly || Locked)
     
    8889        doubleClick = true;
    8990    }
     91
     92    protected override void itemsListView_DragEnter(object sender, DragEventArgs e) {
     93      validDragOperation = false;
     94      if (Locked || ReadOnly) return;
     95
     96      var data = e.Data.GetData(HeuristicLab.Common.Constants.DragDropDataFormat) as ICheckedItemList<T>;
     97      if (data != null)
     98        validDragOperation = Content.Select(x => x.ToString()).SequenceEqual(data.Select(x => x.ToString()));
     99      else
     100        base.itemsListView_DragEnter(sender, e);
     101    }
     102
     103    protected override void itemsListView_DragOver(object sender, DragEventArgs e) {
     104      e.Effect = DragDropEffects.None;
     105      if (!validDragOperation) return;
     106
     107      var data = e.Data.GetData(HeuristicLab.Common.Constants.DragDropDataFormat) as ICheckedItemList<T>;
     108      if (data != null)
     109        e.Effect = DragDropEffects.Copy;
     110      else
     111        base.itemsListView_DragOver(sender, e);
     112    }
     113
     114    protected override void itemsListView_DragDrop(object sender, DragEventArgs e) {
     115      if (e.Effect == DragDropEffects.None) return;
     116      var data = e.Data.GetData(HeuristicLab.Common.Constants.DragDropDataFormat) as ICheckedItemList<T>;
     117      if (data != null) {
     118        for (int i = 0; i < Content.Count; i++) {
     119          Content.SetItemCheckedState(Content[i], data.ItemChecked(data[i]));
     120        }
     121      } else
     122        base.itemsListView_DragDrop(sender, e);
     123    }
    90124    #endregion
    91125
  • branches/HeuristicLab.TimeSeries/HeuristicLab.Core.Views/3.3/ItemArrayView.cs

    r5928 r7213  
    400400        foreach (IndexedItem<T> item in e.Items) {
    401401          ListViewItem listViewItem = itemsListView.Items[item.Index];
     402          if (listViewItem.Tag != null)
     403            itemListViewItemMapping[(T)listViewItem.Tag].Remove(listViewItem);
    402404          listViewItem.Tag = item.Value;
     405          if (listViewItem.Tag != null)
     406            itemListViewItemMapping[item.Value].Add(listViewItem);
    403407          UpdateListViewItemImage(listViewItem);
    404408          UpdateListViewItemText(listViewItem);
  • branches/HeuristicLab.TimeSeries/HeuristicLab.Core.Views/3.3/ItemListView.cs

    r6527 r7213  
    441441        foreach (IndexedItem<T> item in e.Items) {
    442442          ListViewItem listViewItem = itemsListView.Items[item.Index];
     443          if (listViewItem.Tag != null)
     444            itemListViewItemMapping[(T)listViewItem.Tag].Remove(listViewItem);
    443445          listViewItem.Tag = item.Value;
     446          if (listViewItem.Tag != null)
     447            itemListViewItemMapping[item.Value].Add(listViewItem);
    444448          UpdateListViewItemImage(listViewItem);
    445449          UpdateListViewItemText(listViewItem);
  • branches/HeuristicLab.TimeSeries/HeuristicLab.Core.Views/3.3/TypeSelector.cs

    r6954 r7213  
    128128          pluginNode.Tag = plugin;
    129129
    130           var types = from t in ApplicationManager.Manager.GetTypes(BaseTypes, plugin, !ShowNotInstantiableTypes, assignableToAllTypes)
     130          var types = from t in ApplicationManager.Manager.GetTypes(BaseTypes, plugin, !ShowNotInstantiableTypes, ShowGenericTypes, assignableToAllTypes)
    131131                      where typeCondition(t)
    132132                      orderby t.Name ascending
    133133                      select t;
    134134          foreach (Type type in types) {
    135             bool valid = true;
    136             valid = valid && (ShowGenericTypes || !type.ContainsGenericParameters);
    137             valid = valid && (ShowNotInstantiableTypes || type.GetConstructor(Type.EmptyTypes) != null); //check for public default ctor
     135            bool valid = (ShowNotInstantiableTypes || type.GetConstructor(Type.EmptyTypes) != null); //check for public default ctor
    138136            if (valid) {
    139137              TreeNode typeNode = new TreeNode();
     
    144142              else if (type.ContainsGenericParameters) typeNode.ImageIndex = 3;
    145143              else if (imageList.Images.ContainsKey(type.FullName)) typeNode.ImageIndex = imageList.Images.IndexOfKey(type.FullName);
    146               else if (typeof(IItem).IsAssignableFrom(type) && !type.IsInterface && !type.IsAbstract && type.GetConstructor(Type.EmptyTypes) != null) {
    147                 IItem item = (IItem)Activator.CreateInstance(type);
    148                 imageList.Images.Add(type.FullName, item.ItemImage);
    149                 typeNode.ImageIndex = imageList.Images.IndexOfKey(type.FullName);
     144              else {
     145                var image = ItemAttribute.GetImage(type);
     146                if (image != null) {
     147                  imageList.Images.Add(type.FullName, image);
     148                  typeNode.ImageIndex = imageList.Images.IndexOfKey(type.FullName);
     149                }
    150150              }
    151151              typeNode.SelectedImageIndex = typeNode.ImageIndex;
Note: See TracChangeset for help on using the changeset viewer.