// Generated by gmmproc 2.66.7 -- DO NOT MODIFY! #ifndef _GTKMM_SHORTCUTSSHORTCUT_H #define _GTKMM_SHORTCUTSSHORTCUT_H #include #include /* Copyright (C) 2016 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 GtkShortcutsShortcut = struct _GtkShortcutsShortcut; using GtkShortcutsShortcutClass = struct _GtkShortcutsShortcutClass; #endif /* DOXYGEN_SHOULD_SKIP_THIS */ #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace Gtk { class GTKMM_API ShortcutsShortcut_Class; } // namespace Gtk #endif //DOXYGEN_SHOULD_SKIP_THIS namespace Gtk { /** @addtogroup gtkmmEnums gtkmm Enums and Flags */ /** * @var ShortcutType SHORTCUT_ACCELERATOR * The shortcut is a keyboard accelerator. The Gtk::ShortcutsShortcut::property_accelerator() * property will be used. * * @var ShortcutType SHORTCUT_GESTURE_PINCH * The shortcut is a pinch gesture. GTK+ provides an icon and subtitle. * * @var ShortcutType SHORTCUT_GESTURE_STRETCH * The shortcut is a stretch gesture. GTK+ provides an icon and subtitle. * * @var ShortcutType SHORTCUT_GESTURE_ROTATE_CLOCKWISE * The shortcut is a clockwise rotation gesture. GTK+ provides an icon and subtitle. * * @var ShortcutType SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE * The shortcut is a counterclockwise rotation gesture. GTK+ provides an icon and subtitle. * * @var ShortcutType SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT * The shortcut is a two-finger swipe gesture. GTK+ provides an icon and subtitle. * * @var ShortcutType SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT * The shortcut is a two-finger swipe gesture. GTK+ provides an icon and subtitle. * * @var ShortcutType SHORTCUT_GESTURE * The shortcut is a gesture. The Gtk::ShortcutsShortcut::property_icon() property will be * used. * * @enum ShortcutType * * GtkShortcutType specifies the kind of shortcut that is being described. * More values may be added to this enumeration over time. * * @newin{3,20} * * @ingroup gtkmmEnums */ enum ShortcutType { SHORTCUT_ACCELERATOR, SHORTCUT_GESTURE_PINCH, SHORTCUT_GESTURE_STRETCH, SHORTCUT_GESTURE_ROTATE_CLOCKWISE, SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE, SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT, SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT, SHORTCUT_GESTURE }; } // namespace Gtk #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace Glib { template <> class GTKMM_API Value : public Glib::Value_Enum { public: static GType value_type() G_GNUC_CONST; }; } // namespace Glib #endif /* DOXYGEN_SHOULD_SKIP_THIS */ namespace Gtk { /** Represents a keyboard shortcut in a ShortcutsWindow. * * A ShortcutsShortcut represents a single keyboard shortcut or gesture * with a short text. This widget is only meant to be used with ShortcutsWindow. * * @newin{3,20} * * @ingroup Widgets */ class GTKMM_API ShortcutsShortcut : public Box { public: #ifndef DOXYGEN_SHOULD_SKIP_THIS typedef ShortcutsShortcut CppObjectType; typedef ShortcutsShortcut_Class CppClassType; typedef GtkShortcutsShortcut BaseObjectType; typedef GtkShortcutsShortcutClass BaseClassType; #endif /* DOXYGEN_SHOULD_SKIP_THIS */ ShortcutsShortcut(ShortcutsShortcut&& src) noexcept; ShortcutsShortcut& operator=(ShortcutsShortcut&& src) noexcept; // noncopyable ShortcutsShortcut(const ShortcutsShortcut&) = delete; ShortcutsShortcut& operator=(const ShortcutsShortcut&) = delete; ~ShortcutsShortcut() noexcept override; #ifndef DOXYGEN_SHOULD_SKIP_THIS private: friend class GTKMM_API ShortcutsShortcut_Class; static CppClassType shortcutsshortcut_class_; protected: explicit ShortcutsShortcut(const Glib::ConstructParams& construct_params); explicit ShortcutsShortcut(GtkShortcutsShortcut* castitem); #endif /* DOXYGEN_SHOULD_SKIP_THIS */ public: /** 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. GtkShortcutsShortcut* gobj() { return reinterpret_cast(gobject_); } /// Provides access to the underlying C GObject. const GtkShortcutsShortcut* gobj() const { return reinterpret_cast(gobject_); } public: //C++ methods used to invoke GTK+ virtual functions: protected: //GTK+ Virtual Functions (override these to change behaviour): //Default Signal Handlers:: private: public: ShortcutsShortcut(); /** The accelerator(s) represented by this object. This property is used * if Gtk::ShortcutsShortcut::property_shortcut_type() is set to Gtk::SHORTCUT_ACCELERATOR. * * The syntax of this property is (an extension of) the syntax understood by * gtk_accelerator_parse(). Multiple accelerators can be specified by separating * them with a space, but keep in mind that the available width is limited. * It is also possible to specify ranges of shortcuts, using ... between the keys. * Sequences of keys can be specified using a + or & between the keys. * * Examples: * - A single shortcut: delete * - Two alternative shortcuts: a Home * - A range of shortcuts: 1...9 * - Several keys pressed together: Control_L&Control_R * - A sequence of shortcuts or keys: c+x * * Use + instead of & when the keys may (or have to be) pressed sequentially (e.g * use t+t for 'press the t key twice'). * * Note that <, > and & need to be escaped as <, > and & when used * in .ui files. * * 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_accelerator() ; /** The accelerator(s) represented by this object. This property is used * if Gtk::ShortcutsShortcut::property_shortcut_type() is set to Gtk::SHORTCUT_ACCELERATOR. * * The syntax of this property is (an extension of) the syntax understood by * gtk_accelerator_parse(). Multiple accelerators can be specified by separating * them with a space, but keep in mind that the available width is limited. * It is also possible to specify ranges of shortcuts, using ... between the keys. * Sequences of keys can be specified using a + or & between the keys. * * Examples: * - A single shortcut: delete * - Two alternative shortcuts: a Home * - A range of shortcuts: 1...9 * - Several keys pressed together: Control_L&Control_R * - A sequence of shortcuts or keys: c+x * * Use + instead of & when the keys may (or have to be) pressed sequentially (e.g * use t+t for 'press the t key twice'). * * Note that <, > and & need to be escaped as <, > and & when used * in .ui files. * * 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_accelerator() const; /** An icon to represent the shortcut or gesture. This property is used if * Gtk::ShortcutsShortcut::property_shortcut_type() is set to Gtk::SHORTCUT_GESTURE. * For the other predefined gesture types, GTK+ provides an icon on its own. * * @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_icon() ; /** An icon to represent the shortcut or gesture. This property is used if * Gtk::ShortcutsShortcut::property_shortcut_type() is set to Gtk::SHORTCUT_GESTURE. * For the other predefined gesture types, GTK+ provides an icon on its own. * * @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_icon() const; /** true if an icon has been set. * * Default value: false * * @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_icon_set() ; /** true if an icon has been set. * * 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_icon_set() const; /** The textual description for the shortcut or gesture represented by * this object. This should be a short string that can fit in a single line. * * 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_title() ; /** The textual description for the shortcut or gesture represented by * this object. This should be a short string that can fit in a single line. * * 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_title() const; /** The subtitle for the shortcut or gesture. * * This is typically used for gestures and should be a short, one-line * text that describes the gesture itself. For the predefined gesture * types, GTK+ provides a subtitle on its own. * * 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_subtitle() ; /** The subtitle for the shortcut or gesture. * * This is typically used for gestures and should be a short, one-line * text that describes the gesture itself. For the predefined gesture * types, GTK+ provides a subtitle on its own. * * 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_subtitle() const; /** true if a subtitle has been set. * * Default value: false * * @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_subtitle_set() ; /** true if a subtitle has been set. * * 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_subtitle_set() const; /** The text direction for which this shortcut is active. If the shortcut * is used regardless of the text direction, set this property to * Gtk::TEXT_DIR_NONE. * * Default value: Gtk::TEXT_DIR_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< TextDirection > property_direction() ; /** The text direction for which this shortcut is active. If the shortcut * is used regardless of the text direction, set this property to * Gtk::TEXT_DIR_NONE. * * Default value: Gtk::TEXT_DIR_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< TextDirection > property_direction() const; /** The type of shortcut that is represented. * * Default value: Gtk::SHORTCUT_ACCELERATOR * * @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< ShortcutType > property_shortcut_type() ; /** The type of shortcut that is represented. * * Default value: Gtk::SHORTCUT_ACCELERATOR * * @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< ShortcutType > property_shortcut_type() const; /** A detailed action name. If this is set for a shortcut * of type Gtk::SHORTCUT_ACCELERATOR, then GTK+ will use * the accelerators that are associated with the action * via Gtk::Application::set_accels_for_action(), and setting * Gtk::ShortcutsShortcut::signal_accelerator() is not necessary. * * @newin{3,22} * * 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_action_name() ; /** A detailed action name. If this is set for a shortcut * of type Gtk::SHORTCUT_ACCELERATOR, then GTK+ will use * the accelerators that are associated with the action * via Gtk::Application::set_accels_for_action(), and setting * Gtk::ShortcutsShortcut::signal_accelerator() is not necessary. * * @newin{3,22} * * 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_action_name() const; }; } // 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::ShortcutsShortcut */ GTKMM_API Gtk::ShortcutsShortcut* wrap(GtkShortcutsShortcut* object, bool take_copy = false); } //namespace Glib #endif /* _GTKMM_SHORTCUTSSHORTCUT_H */