list->append(item);
}
+void Dropdown::insert(unsigned i, const string &v)
+{
+ list->insert(i, v);
+}
+
+void Dropdown::remove(unsigned i)
+{
+ list->remove(i);
+}
+
+void Dropdown::clear()
+{
+ list->clear();
+}
+
+void Dropdown::set_selected_index(int i)
+{
+ list->set_selected_index(i);
+}
+
+const string &Dropdown::get_selected() const
+{
+ return list->get_selected();
+}
+
+int Dropdown::get_selected_index() const
+{
+ return list->get_selected_index();
+}
+
void Dropdown::button_press(int x, int y, unsigned btn)
{
if(list->get_geometry().is_inside(x, y))
{
text=item;
- list_active=false;
- dropped=false;
- state&=~ACTIVE;
- if(parent)
- parent->ungrab_pointer(*this);
+ if(dropped)
+ {
+ list_active=false;
+ dropped=false;
+ state&=~ACTIVE;
+ if(parent)
+ parent->ungrab_pointer(*this);
+ }
signal_item_selected.emit(index, item);
}