own_data = false;
observer = new DataObserver(*this);
+ for(vector<Item *>::iterator i=items.begin(); i!=items.end(); ++i)
+ delete *i;
+ items.clear();
+ unsigned n_items = data->size();
+ for(unsigned i=0; i<n_items; ++i)
+ {
+ Item *item = create_item(i);
+ add(*item);
+ items.push_back(item);
+ }
+
items_changed();
}