diff options
author | Stijn Buys <ingar@osirion.org> | 2010-09-18 18:50:55 +0000 |
---|---|---|
committer | Stijn Buys <ingar@osirion.org> | 2010-09-18 18:50:55 +0000 |
commit | 9c91a9767b570fdc3c3e19e1f452f9a8257f9999 (patch) | |
tree | 9ac10114a3378134ea19dac3d7f7639532c3bf5a /src/ui/listview.cc | |
parent | fc4809e41bc5694231046eb2fd4c324c4daba13f (diff) |
trade updates
Diffstat (limited to 'src/ui/listview.cc')
-rw-r--r-- | src/ui/listview.cc | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/ui/listview.cc b/src/ui/listview.cc index da320c5..646b168 100644 --- a/src/ui/listview.cc +++ b/src/ui/listview.cc @@ -15,6 +15,7 @@ ListView::ListView(Widget *parent) : Widget(parent) set_border(true); listview_scroll = 0.0f; + listview_selecteditem = 0; } ListView::~ListView() @@ -66,5 +67,26 @@ void ListView::resize() content_top += (*it)->height(); } } + +void ListView::deselect() +{ + listview_selecteditem = 0; +} + +void ListView::clear() +{ + listview_selecteditem = 0; + remove_children(); +} + +bool ListView::on_emit(Widget *sender, const Event event, void *data) +{ + if ((sender->parent() == this) && (event == Widget::EventListItemClicked)) { + listview_selecteditem = static_cast<ListItem *>(sender); + return false; // return false because parent widgets might want to handle this event + } + return ui::Widget::on_emit(sender, event, data); +} + } |