X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flist.cpp;h=a7185acab422eee81b86a2021bbf018d78c85073;hb=5f73de83d46138faa2b4c1b0a725d0a705988388;hp=9eff09bb47566a1a6785ee909327da878f8a29ce;hpb=21cb1e0b6fcc653d1298423dff5af5609389d415;p=libs%2Fgltk.git diff --git a/source/list.cpp b/source/list.cpp index 9eff09b..a7185ac 100644 --- a/source/list.cpp +++ b/source/list.cpp @@ -9,7 +9,6 @@ #include "part.h" #include "style.h" #include "text.h" -#include "vslider.h" using namespace std; @@ -136,7 +135,7 @@ void List::set_data(ListData &d) void List::items_changed() { signal_autosize_changed.emit(); - rebuild(); + mark_rebuild(); } List::Item *List::create_item(unsigned index) @@ -404,7 +403,7 @@ void List::item_autosize_changed(Item *item) { item->autosize(); signal_autosize_changed.emit(); - rebuild(); + mark_rebuild(); } void List::reposition_items(bool record_rows) @@ -507,6 +506,7 @@ void List::check_view_range() first_row = max_scroll; slider.set_range(0, max_scroll); + slider.set_page_size(rows.size()-max_scroll); slider.set_value(max_scroll-first_row); } @@ -527,7 +527,7 @@ void List::slider_value_changed(double value) if(max_scroll>0 && !ignore_slider_change) { first_row = max_scroll-static_cast(value); - rebuild(); + mark_rebuild(); } }