+ Item *item = 0;
+ if(item_factory)
+ item = item_factory->create_item(index);
+ else
+ item = new BasicItem(data->get_string(index));
+ add(*item);
+ item->autosize();
+ item->signal_autosize_changed.connect(sigc::bind(sigc::mem_fun(this, &List::item_autosize_changed), item));
+ return item;