From 9bc85a553c542bc3bff108a066a1da9493078491 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Tue, 11 Aug 2015 14:04:58 +0200 Subject: add API to get combobox option count. The data model needs to be checked to count available options. Directly using ComboBoxText::children()::size() counts widgets. --- libs/gtkmm2ext/gtkmm2ext/utils.h | 2 ++ libs/gtkmm2ext/utils.cc | 10 ++++++++++ 2 files changed, 12 insertions(+) (limited to 'libs/gtkmm2ext') diff --git a/libs/gtkmm2ext/gtkmm2ext/utils.h b/libs/gtkmm2ext/gtkmm2ext/utils.h index ab70464ea0..6ed5d77428 100644 --- a/libs/gtkmm2ext/gtkmm2ext/utils.h +++ b/libs/gtkmm2ext/gtkmm2ext/utils.h @@ -101,6 +101,8 @@ namespace Gtkmm2ext { LIBGTKMM2EXT_API void get_popdown_strings (Gtk::ComboBoxText&, std::vector&); + LIBGTKMM2EXT_API size_t get_popdown_string_count (Gtk::ComboBoxText&); + LIBGTKMM2EXT_API bool contains_value (Gtk::ComboBoxText&, const std::string); diff --git a/libs/gtkmm2ext/utils.cc b/libs/gtkmm2ext/utils.cc index 6efa95ac1a..f1616f16a1 100644 --- a/libs/gtkmm2ext/utils.cc +++ b/libs/gtkmm2ext/utils.cc @@ -322,6 +322,16 @@ Gtkmm2ext::get_popdown_strings (Gtk::ComboBoxText& cr, std::vector& } } +size_t +Gtkmm2ext::get_popdown_string_count (Gtk::ComboBoxText& cr) +{ + Glib::RefPtr m = cr.get_model(); + if (!m) { + return 0; + } + return m->children().size(); +} + bool Gtkmm2ext::contains_value (Gtk::ComboBoxText& cr, const std::string text) { -- cgit v1.2.3