Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
12/15/10 15:43:43 (13 years ago)
Author:
cneumuel
Message:

#1215

  • optional parameter values now can be null
  • problem type can now be set specifically
  • values are constrained to the encoding of the Problem
  • moved repetitions parameter to MetaOptimizationProblem
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization.Views/3.3/ObjectSelectorDialog.cs

    r4830 r5110  
    11using System;
    22using System.Collections.Generic;
    3 using System.ComponentModel;
    4 using System.Data;
    5 using System.Drawing;
    63using System.Linq;
    7 using System.Text;
    84using System.Windows.Forms;
    95using HeuristicLab.Core;
    106
    117namespace HeuristicLab.Problems.MetaOptimization.Views {
    12   public partial class ObjectSelectorDialog<T> : Form where T : INamedItem {
     8  public partial class ObjectSelectorDialog<T> : Form where T : IItem {
    139    private bool initialized;
    1410    private List<IItem> items;
    15     private IEnumerable<IGrouping<Type, T>> selectableItems;
     11    private IEnumerable<IGrouping<string, T>> selectableItems;
    1612
    1713    private T item;
     
    2016    }
    2117
    22     public ObjectSelectorDialog(IEnumerable<IGrouping<Type, T>> selectableItems) {
     18    public ObjectSelectorDialog(IEnumerable<IGrouping<string, T>> selectableItems) {
    2319      this.initialized = false;
    2420      this.items = new List<IItem>();
     
    3127      if (!initialized) {
    3228        itemsListView.SmallImageList = new ImageList();
    33 
    34         foreach (IGrouping<Type, T> item in selectableItems) {
    35           ListViewGroup group = new ListViewGroup(item.Key.Name);
     29       
     30        foreach (IGrouping<string, T> item in selectableItems) {
     31          ListViewGroup group = new ListViewGroup(item.Key);
    3632          itemsListView.Groups.Add(group);
    3733          foreach (T i in item) {
    3834            items.Add(i);
    39             ListViewItem value = new ListViewItem(new string[] { i.Name, i.Description, i.ItemName }, group);
     35            string[] columns;
     36            if(i is INamedItem) {
     37              INamedItem ni = i as INamedItem;
     38              columns = new string[] { ni.Name, ni.Description, ni.GetType().Name };
     39            } else {
     40              columns = new string[] { i.ItemName, i.ItemDescription, i.GetType().Name };
     41            }
     42            ListViewItem value = new ListViewItem(columns, group);
    4043            itemsListView.SmallImageList.Images.Add(i.ItemImage);
    4144            value.ImageIndex = itemsListView.SmallImageList.Images.Count - 1;
Note: See TracChangeset for help on using the changeset viewer.