// Generated by gmmproc 2.84.0 -- DO NOT MODIFY! #ifndef _GTKMM_COLUMNVIEWROW_H #define _GTKMM_COLUMNVIEWROW_H #include #include /* Copyright (C) 2023 The gtkmm Development Team * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library. If not, see . */ #include #ifndef DOXYGEN_SHOULD_SKIP_THIS using GtkColumnViewRow = struct _GtkColumnViewRow; using GtkColumnViewRowClass = struct _GtkColumnViewRowClass; #endif /* DOXYGEN_SHOULD_SKIP_THIS */ #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace Gtk { class GTKMM_API ColumnViewRow_Class; } // namespace Gtk #endif //DOXYGEN_SHOULD_SKIP_THIS namespace Gtk { /** %Gtk::ColumnViewRow is used by Gtk::ColumnView to allow configuring * how rows are displayed. * * It is not used to set the widgets displayed in the individual cells. For that * see Gtk::ColumnViewColumn::set_factory() and Gtk::ColumnViewCell. * * @newin{4,12} */ class GTKMM_API ColumnViewRow : public Glib::Object { #ifndef DOXYGEN_SHOULD_SKIP_THIS public: using CppObjectType = ColumnViewRow; using CppClassType = ColumnViewRow_Class; using BaseObjectType = GtkColumnViewRow; using BaseClassType = GtkColumnViewRowClass; // noncopyable ColumnViewRow(const ColumnViewRow&) = delete; ColumnViewRow& operator=(const ColumnViewRow&) = delete; private: friend class ColumnViewRow_Class; static CppClassType columnviewrow_class_; protected: explicit ColumnViewRow(const Glib::ConstructParams& construct_params); explicit ColumnViewRow(GtkColumnViewRow* castitem); #endif /* DOXYGEN_SHOULD_SKIP_THIS */ public: ColumnViewRow(ColumnViewRow&& src) noexcept; ColumnViewRow& operator=(ColumnViewRow&& src) noexcept; ~ColumnViewRow() noexcept override; /** Get the GType for this class, for use with the underlying GObject type system. */ static GType get_type() G_GNUC_CONST; #ifndef DOXYGEN_SHOULD_SKIP_THIS static GType get_base_type() G_GNUC_CONST; #endif ///Provides access to the underlying C GObject. GtkColumnViewRow* gobj() { return reinterpret_cast(gobject_); } ///Provides access to the underlying C GObject. const GtkColumnViewRow* gobj() const { return reinterpret_cast(gobject_); } ///Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. GtkColumnViewRow* gobj_copy(); private: public: // Don't use Glib::RefPtr Glib::wrap(GObject* object, bool take_copy). // The object may be an interface object, e.g. Gio::AppInfo. Such an object can't be // cast to Glib::Object. https://gitlab.gnome.org/GNOME/glibmm/-/issues/93 /** Gets the model item that associated with @a self. * * If @a self is unbound, this function returns nullptr. * * @newin{4,12} * * @return The item displayed. */ Glib::RefPtr get_item(); /** Gets the model item that associated with @a self. * * If @a self is unbound, this function returns nullptr. * * @newin{4,12} * * @return The item displayed. */ Glib::RefPtr get_item() const; /** Gets the position in the model that @a self currently displays. * * If @a self is unbound, GTK_INVALID_LIST_POSITION is returned. * * @newin{4,12} * * @return The position of this row. */ guint get_position() const; /** Checks if the item is selected that this row corresponds to. * * The selected state is maintained by the list widget and its model * and cannot be set otherwise. * * @newin{4,12} * * @return true if the item is selected. */ bool get_selected() const; /** Checks if the row has been set to be selectable via * set_selectable(). * * Do not confuse this function with get_selected(). * * @newin{4,12} * * @return true if the row is selectable. */ bool get_selectable() const; /** Sets @a self to be selectable. * * If a row is selectable, clicking on the row or using the keyboard * will try to select or unselect the row. Whether this succeeds is up to * the model to determine, as it is managing the selected state. * * Note that this means that making a row non-selectable has no * influence on the selected state at all. A non-selectable row * may still be selected. * * By default, rows are selectable. * * @newin{4,12} * * @param selectable If the row should be selectable. */ void set_selectable(bool selectable = true); /** Checks if the row has been set to be activatable via * set_activatable(). * * @newin{4,12} * * @return true if the row is activatable. */ bool get_activatable() const; /** Sets @a self to be activatable. * * If a row is activatable, double-clicking on the row, using * the Return key or calling Gtk::Widget::activate() will activate * the row. Activating instructs the containing columnview to * emit the Gtk::ColumnView::signal_activate() signal. * * By default, row are activatable. * * @newin{4,12} * * @param activatable If the row should be activatable. */ void set_activatable(bool activatable = true); /** Checks if a row item has been set to be focusable via * set_focusable(). * * @newin{4,12} * * @return true if the row is focusable. */ bool get_focusable() const; /** Sets @a self to be focusable. * * If a row is focusable, it can be focused using the keyboard. * This works similar to Gtk::Widget::set_focusable(). * * Note that if row are not focusable, the contents of cells can still be focused if * they are focusable. * * By default, rows are focusable. * * @newin{4,12} * * @param focusable If the row should be focusable. */ void set_focusable(bool focusable = true); /** Gets the accessible description of @a self. * * @newin{4,12} * * @return The accessible description. */ Glib::ustring get_accessible_description() const; /** Sets the accessible description for the row, * which may be used by e.g.\ screen readers. * * @newin{4,12} * * @param description The description. */ void gtk_set_accessible_description(const Glib::ustring& description); /** Gets the accessible label of @a self. * * @newin{4,12} * * @return The accessible label. */ Glib::ustring get_accessible_label() const; /** Sets the accessible label for the row, * which may be used by e.g.\ screen readers. * * @newin{4,12} * * @param label The label. */ void gtk_set_accessible_label(const Glib::ustring& label); /** The accessible description to set on the row. * * @newin{4,12} * * Default value: "" * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< Glib::ustring > property_accessible_description() ; /** The accessible description to set on the row. * * @newin{4,12} * * Default value: "" * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< Glib::ustring > property_accessible_description() const; /** The accessible label to set on the row. * * @newin{4,12} * * Default value: "" * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< Glib::ustring > property_accessible_label() ; /** The accessible label to set on the row. * * @newin{4,12} * * Default value: "" * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< Glib::ustring > property_accessible_label() const; /** If the row can be activated by the user. * * @newin{4,12} * * Default value: true * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< bool > property_activatable() ; /** If the row can be activated by the user. * * @newin{4,12} * * Default value: true * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< bool > property_activatable() const; /** If the row can be focused with the keyboard. * * @newin{4,12} * * Default value: true * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< bool > property_focusable() ; /** If the row can be focused with the keyboard. * * @newin{4,12} * * Default value: true * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< bool > property_focusable() const; /** The item for this row. * * @newin{4,12} * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< Glib::RefPtr > property_item() const; /** Position of the row. * * @newin{4,12} * * Default value: 4294967295 * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< guint > property_position() const; /** If the row can be selected by the user. * * @newin{4,12} * * Default value: true * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< bool > property_selectable() ; /** If the row can be selected by the user. * * @newin{4,12} * * Default value: true * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< bool > property_selectable() const; /** If the item in the row is currently selected. * * @newin{4,12} * * Default value: false * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< bool > property_selected() const; public: public: //C++ methods used to invoke GTK+ virtual functions: protected: //GTK+ Virtual Functions (override these to change behaviour): //Default Signal Handlers:: }; } // namespace Gtk namespace Glib { /** A Glib::wrap() method for this object. * * @param object The C instance. * @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref. * @result A C++ instance that wraps this C instance. * * @relates Gtk::ColumnViewRow */ GTKMM_API Glib::RefPtr wrap(GtkColumnViewRow* object, bool take_copy = false); } #endif /* _GTKMM_COLUMNVIEWROW_H */