// Generated by gmmproc 2.82.0 -- DO NOT MODIFY! #ifndef _GTKMM_ATCONTEXT_H #define _GTKMM_ATCONTEXT_H #include #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 #include #include #ifndef DOXYGEN_SHOULD_SKIP_THIS using GtkATContext = struct _GtkATContext; using GtkATContextClass = struct _GtkATContextClass; #endif /* DOXYGEN_SHOULD_SKIP_THIS */ #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace Gtk { class GTKMM_API ATContext_Class; } // namespace Gtk #endif //DOXYGEN_SHOULD_SKIP_THIS namespace Gtk { /** %Gtk::ATContext is an abstract class provided by GTK to communicate to * platform-specific assistive technologies API. * * Each platform supported by GTK implements a GtkATContext subclass, and * is responsible for updating the accessible state in response to state * changes in Gtk::Accessible. * * @newin{4,10} */ class GTKMM_API ATContext : public Glib::Object { #ifndef DOXYGEN_SHOULD_SKIP_THIS public: using CppObjectType = ATContext; using CppClassType = ATContext_Class; using BaseObjectType = GtkATContext; using BaseClassType = GtkATContextClass; // noncopyable ATContext(const ATContext&) = delete; ATContext& operator=(const ATContext&) = delete; private: friend class ATContext_Class; static CppClassType atcontext_class_; protected: explicit ATContext(const Glib::ConstructParams& construct_params); explicit ATContext(GtkATContext* castitem); #endif /* DOXYGEN_SHOULD_SKIP_THIS */ public: ATContext(ATContext&& src) noexcept; ATContext& operator=(ATContext&& src) noexcept; ~ATContext() 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. GtkATContext* gobj() { return reinterpret_cast(gobject_); } ///Provides access to the underlying C GObject. const GtkATContext* 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. GtkATContext* gobj_copy(); private: protected: ATContext(); public: /** Creates a new `Gtk::ATContext` instance for the given accessible role, * accessible instance, and display connection. * * The `Gtk::ATContext` implementation being instantiated will depend on the * platform. * * @param accessible_role The accessible role used by the `Gtk::ATContext`. * @param accessible The `Gtk::Accessible` implementation using the `Gtk::ATContext`. * @param display The `Gdk::Display` used by the `Gtk::ATContext`. * @return The `Gtk::ATContext`. */ static Glib::RefPtr create(Accessible::Role accessible_role, const Glib::RefPtr& accessible, const Glib::RefPtr& display); /** Retrieves the `Gtk::Accessible` using this context. * * @return A `Gtk::Accessible`. */ Glib::RefPtr get_accessible(); /** Retrieves the `Gtk::Accessible` using this context. * * @return A `Gtk::Accessible`. */ Glib::RefPtr get_accessible() const; /** Retrieves the accessible role of this context. * * @return A `Gtk::Accessible::Role`. */ Accessible::Role get_accessible_role() const; /** The accessible role used by the AT context. * * Depending on the given role, different states and properties can be * set or retrieved. * * Default value: Gtk::Accessible::Role::NONE * * @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< Accessible::Role > property_accessible_role() ; /** The accessible role used by the AT context. * * Depending on the given role, different states and properties can be * set or retrieved. * * Default value: Gtk::Accessible::Role::NONE * * @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< Accessible::Role > property_accessible_role() const; /** The `Gtk::Accessible` that created the `Gtk::ATContext` instance. * * @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_accessible() const; /** The `Gdk::Display` for the `Gtk::ATContext`. * * @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::RefPtr > property_display() ; /** The `Gdk::Display` for the `Gtk::ATContext`. * * @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_display() const; // no_default_handler because the wrapped C signal has no default handler. /** * @par Slot Prototype: * void on_my_%state_change() * * Flags: Run First * * Emitted when the attributes of the accessible for the * `Gtk::ATContext` instance change. */ Glib::SignalProxy signal_state_change(); 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::ATContext */ GTKMM_API Glib::RefPtr wrap(GtkATContext* object, bool take_copy = false); } #endif /* _GTKMM_ATCONTEXT_H */