Exempel med ett sökfält

Rullgardinsmenyn kan innehålla ett Entry som tillåter sökning efter objekt i listan. Anropa set_enable_search() och set_expression(). Till exempel:

m_DropDown.set_enable_search(true);
auto expression = Gtk::ClosureExpression<Glib::ustring>::create(
  sigc::mem_fun(*this, &ExampleWindow::get_col_name));
m_DropDown.set_expression(expression);

//-------
Glib::ustring ExampleWindow::get_col_name(const Glib::RefPtr<Glib::ObjectBase>& item)
{
  const auto col = std::dynamic_pointer_cast<ModelColumns>(item);
  return col ? col->m_col_name : "";
}

Strängexempel

Sök sträng

Källkod

Typsnittsexempel

Detta exempel använder en Pango::FontMap som sin modell. Detta är möjligt för att Pango::FontMap implementerar Gio::ListModel-gränssnittet. Du kan förstås använda en FontDialogButton i stället.

Sök typsnitt

Källkod