2 // Generated by gtkmmproc -- DO NOT MODIFY!
3 #ifndef _GTKMM_CELLRENDERERCOMBO_H
4 #define _GTKMM_CELLRENDERERCOMBO_H
10 /* cellrenderercombo.h
12 * Copyright (C) 2004 The gtkmm Development Team
14 * This library is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU Library General Public
16 * License as published by the Free Software Foundation; either
17 * version 2 of the License, or (at your option) any later version.
19 * This library is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22 * Library General Public License for more details.
24 * You should have received a copy of the GNU Library General Public
25 * License along with this library; if not, write to the Free
26 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
29 #include <gtkmm/cellrenderertext.h>
30 #include <gtkmm/treemodel.h>
33 #ifndef DOXYGEN_SHOULD_SKIP_THIS
34 typedef struct _GtkCellRendererCombo GtkCellRendererCombo;
35 typedef struct _GtkCellRendererComboClass GtkCellRendererComboClass;
36 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
40 { class CellRendererCombo_Class; } // namespace Gtk
44 /** Renders a combobox in a cell.
45 * CellRendererCombo renders text in a cell like CellRendererText, from which it is derived. But while
46 * CellRendererText offers a simple entry to edit the text, CellRendererCombo offers a ComboBox or
47 * ComboBoxEntry widget to edit the text. The values to display in the combo box are taken from the
48 * tree model specified in the model property.
50 * The combo cell renderer takes care of adding a text cell renderer to the combo box and sets it to
51 * display the column specified by its text_column property. Further cell renderers can be added in a
52 * handler for the editing_started signal.
57 class CellRendererCombo : public CellRendererText
60 #ifndef DOXYGEN_SHOULD_SKIP_THIS
61 typedef CellRendererCombo CppObjectType;
62 typedef CellRendererCombo_Class CppClassType;
63 typedef GtkCellRendererCombo BaseObjectType;
64 typedef GtkCellRendererComboClass BaseClassType;
65 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
67 virtual ~CellRendererCombo();
69 #ifndef DOXYGEN_SHOULD_SKIP_THIS
72 friend class CellRendererCombo_Class;
73 static CppClassType cellrenderercombo_class_;
76 CellRendererCombo(const CellRendererCombo&);
77 CellRendererCombo& operator=(const CellRendererCombo&);
80 explicit CellRendererCombo(const Glib::ConstructParams& construct_params);
81 explicit CellRendererCombo(GtkCellRendererCombo* castitem);
83 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
86 #ifndef DOXYGEN_SHOULD_SKIP_THIS
87 static GType get_type() G_GNUC_CONST;
88 static GType get_base_type() G_GNUC_CONST;
91 ///Provides access to the underlying C GtkObject.
92 GtkCellRendererCombo* gobj() { return reinterpret_cast<GtkCellRendererCombo*>(gobject_); }
94 ///Provides access to the underlying C GtkObject.
95 const GtkCellRendererCombo* gobj() const { return reinterpret_cast<GtkCellRendererCombo*>(gobject_); }
99 //C++ methods used to invoke GTK+ virtual functions:
102 //GTK+ Virtual Functions (override these to change behaviour):
104 //Default Signal Handlers::
113 /** The model containing the possible values for the combo box.
115 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
116 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
117 * the value of the property changes.
119 Glib::PropertyProxy< Glib::RefPtr<Gtk::TreeModel> > property_model() ;
121 /** The model containing the possible values for the combo box.
123 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
124 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
125 * the value of the property changes.
127 Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gtk::TreeModel> > property_model() const;
129 /** A column in the data source model to get the strings from.
131 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
132 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
133 * the value of the property changes.
135 Glib::PropertyProxy<int> property_text_column() ;
137 /** A column in the data source model to get the strings from.
139 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
140 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
141 * the value of the property changes.
143 Glib::PropertyProxy_ReadOnly<int> property_text_column() const;
147 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
148 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
149 * the value of the property changes.
151 Glib::PropertyProxy<bool> property_has_entry() ;
155 * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
156 * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
157 * the value of the property changes.
159 Glib::PropertyProxy_ReadOnly<bool> property_has_entry() const;
162 virtual Glib::PropertyProxy_Base _property_renderable(); //override
167 } /* namespace Gtk */
172 /** @relates Gtk::CellRendererCombo
173 * @param object The C instance
174 * @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
175 * @result A C++ instance that wraps this C instance.
177 Gtk::CellRendererCombo* wrap(GtkCellRendererCombo* object, bool take_copy = false);
179 #endif /* _GTKMM_CELLRENDERERCOMBO_H */