X-Git-Url: http://git.tdb.fi/?p=libs%2Fgltk.git;a=blobdiff_plain;f=source%2Flist.cpp;h=fbb711e146cab0d1fba0187dd8fdcf743896de60;hp=ec3f9942d458eece47a62f4eb2ee2b233c5d54b7;hb=3f77f3542a6405fd832ababe48b950d1a65b00ed;hpb=a2dde70bd7a55902d6e7f7634081aa9ff1c1410a diff --git a/source/list.cpp b/source/list.cpp index ec3f994..fbb711e 100644 --- a/source/list.cpp +++ b/source/list.cpp @@ -275,7 +275,7 @@ List::DataObserver::DataObserver(List &l): list.data->signal_item_added.connect(sigc::mem_fun(this, &DataObserver::item_added)); list.data->signal_item_removed.connect(sigc::mem_fun(this, &DataObserver::item_removed)); list.data->signal_cleared.connect(sigc::mem_fun(this, &DataObserver::cleared)); - list.data->signal_refresh_strings.connect(sigc::mem_fun(this, &DataObserver::refresh_strings)); + list.data->signal_refresh_item.connect(sigc::mem_fun(this, &DataObserver::refresh_item)); } void List::DataObserver::item_added(unsigned i) @@ -310,8 +310,10 @@ void List::DataObserver::cleared() list.items_changed(); } -void List::DataObserver::refresh_strings() +void List::DataObserver::refresh_item(unsigned i) { + delete list.items[i]; + list.items[i] = list.create_item(i); list.items_changed(); }