1/* Copyright (C) 2012 The giomm Development Team
2 *
3 * This library is free software; you can redistribute it and/or
4 * modify it under the terms of the GNU Lesser General Public
5 * License as published by the Free Software Foundation; either
6 * version 2.1 of the License, or (at your option) any later version.
7 *
8 * This library is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 * Lesser General Public License for more details.
12 *
13 * You should have received a copy of the GNU Lesser General Public
14 * License along with this library.  If not, see <http://www.gnu.org/licenses/>.
15 */
16
17_CONFIGINCLUDE(giommconfig.h)
18
19#include <glibmm/object.h>
20
21_DEFS(giomm,gio)
22_PINCLUDE(glibmm/private/object_p.h)
23
24namespace Gio
25{
26
27class GIOMM_API MenuModel;
28
29/** MenuLinkIter - A menu link iterator.
30 * @newin{2,32}
31 */
32class GIOMM_API MenuLinkIter : public Glib::Object
33{
34  _CLASS_GOBJECT(MenuLinkIter, GMenuLinkIter, G_MENU_LINK_ITER, Glib::Object, GObject, , , GIOMM_API)
35
36protected:
37  _CTOR_DEFAULT
38
39public:
40  _WRAP_METHOD(Glib::ustring get_name() const, g_menu_link_iter_get_name)
41
42  _WRAP_METHOD_DOCS_ONLY(g_menu_link_iter_get_next)
43  bool get_next(Glib::ustring& out_link, Glib::RefPtr<MenuModel>& value);
44
45  _WRAP_METHOD(Glib::RefPtr<MenuModel> get_value(), g_menu_link_iter_get_value)
46  _WRAP_METHOD(Glib::RefPtr<const MenuModel> get_value() const, g_menu_link_iter_get_value, constversion)
47
48  _WRAP_METHOD(bool next(), g_menu_link_iter_next)
49};
50
51} // namespace Gio
52